首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用jquery使用单个最大值计算多个文本框值中的字符

使用jquery使用单个最大值计算多个文本框值中的字符
EN

Stack Overflow用户
提问于 2014-06-06 06:23:15
回答 2查看 1.7K关注 0票数 0

我希望使用多个文本框来计数字符。我搜索了这么多链接、和堆栈溢出答案。但我没有得到正确的答案。我已经审查了答案下面的链接,但这是有两种类型的最大计数两个文本框。但在我的例子中,我想使用最大字符160对所有文本框进行计数。它应该合并所有这些输入,并且每次它应该计算值多输入JQuery字符计数器

我的代码在这里

代码语言:javascript
运行
复制
$('#Loc').keyup(function () {

            var len = $(this).val().length;
            var $msg = $("#charNum");
            if (len > 160) {
                var output = $(this).val().substring(0, 160);
                var msglength = 2;
                //$(this).val(output);

                $msg.html(len + "/" + msglength + " sms left");
            } else {
                $msg.html(160 - len + " characters left");
            }
        });

以上代码用于第一个文本框。

代码语言:javascript
运行
复制
 $('#Contn').keyup(function () {
            var Vaclen = $('#Vac').val().length + $('#Loc').val().length;
            var len = $(this).val().length;
            var $msg = $("#charNum");
            if (len > 160) {
                var output = $(this).val().substring(0, 160);
                var msglength = 2;
                //$(this).val(output);

                $msg.html(len + "/" + msglength + " sms left");
            } else {
                $msg.html(Vaclen - len + " characters left");
            }
        });

我附了截图。

如何组合所有文本框值以及如何显示?

我的小提琴在这里

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-06-06 07:02:17

试试这个jQuery:

这里,您需要为输入文本编写两个事件。一个是焦点,除了焦点输入之外,您将计算总文本长度;另一个是重点输入的keyup事件,其中您必须获得所有输入的总文本长度。

代码语言:javascript
运行
复制
$(document).ready(function () {
            var count = 0; // 
            var focusCount = 0;

        $('input[type=textbox]').focus(function(){

            focusCount = $(this).val().length;
            count = 0;              
            // get total text length
            $('input[type=textbox]').each(function(){
                count +=  $(this).val().length;
            });
            // remove text length of focused input from total count
            count-=focusCount;
        });

        $('input[type=textbox]').keyup(function () {
                focusCount = $(this).val().length;
               $('#charNum').text(160 - (count+focusCount));
        });
    });

工作JSfiddle

票数 1
EN

Stack Overflow用户

发布于 2014-06-06 07:06:51

您需要计算所有元素的长度(我添加了一个仅限于所有输入的类):

代码语言:javascript
运行
复制
$('.limited').each(function() {
    var curLen = $(this).val().length;
    len +=  curLen;
});

要截断结果,您需要知道该特定元素可用的剩余长度。

参见此示例(最大长度减为10以进行测试):小提琴

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24075504

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档