Jquery 有助于强制文本区域的最大长度?

标签 jquery validation textarea

这是当您添加属性“maxlength”时,Jquery 强制文本区域的最大长度。 IE 不支持 Maxlength。如何调整代码以处理页面上的多个文本区域?现在 如果我将文本添加到任何文本区域,它们都会以相同的值倒计时。

Jquery:

$(document).ready( function () {

maxLength = $("textarea").attr("maxlength");
    $("textarea").after("<div><span id='remainingLengthTempId'>" 
              + maxLength + "</span> remaining</div>");

    $("textarea").bind("keyup change", function(){checkMaxLength(this.id,  maxLength); } )

});

function checkMaxLength(textareaID, maxLength){

    currentLengthInTextarea = $("#"+textareaID).val().length;
    $(remainingLengthTempId).text(parseInt(maxLength) - parseInt(currentLengthInTextarea));

    if (currentLengthInTextarea > (maxLength)) { 

        // Trim the field current length over the maxlength.
        $("textarea").val($("textarea").val().slice(0, maxLength));
        $(remainingLengthTempId).text(0);

    }
}

HTML:

Skills:
<textarea id="1" maxlength="200" rows="10" cols="60" ></textarea>

Postions:
<textarea id="2" maxlength="200" rows="10" cols="60" ></textarea>

Comments
<textarea id="3" maxlength="100" rows="10" cols="60" ></textarea>

最佳答案

这是最好的解决方案! 将其放入 HTML 代码中的脚本标记中

$("textarea[maxlength]").on("propertychange input", function() {
    if (this.value.length > this.maxlength) {
        this.value = this.value.substring(0, this.maxlength);
    }  
});

现在使用<textarea maxlength="{your limit}"></textarea>对于 {your limit}字符数限制。

关于Jquery 有助于强制文本区域的最大长度?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15031513/

相关文章:

javascript - 字符限制在 iPad 上不起作用

php - Symfony2 表单验证器 - 刷新前比较旧值和新值

javascript - 当我按转义键时如何按空格键

javascript - 显示文本区域中重复的单词数

html - AngularJS:使用多行写入和读取文本区域

javascript - 更改文件中的 CSS 值

javascript - jspdf 预期为 : error for get width

jquery - Bootstrap 日历不显示,尽管一切都很好

javascript - Bootstrap 4 Modal with Tabs 内的 JQuery Validation Form 不会提交

android - 无法正确执行 OnKeyListener