限制可见输入区域中的文本

时间:2014-05-12 10:27:08

标签: javascript jquery

通常,用户可以在文本字段中输入更多内容。限制字符是一个耗时的过程,因为它需要检查输入字段中可以输入的字符数。 所以我试着按照以下方式。

$.fn.textWidth = function(text, font) {
    if (!$.fn.textWidth.fakeEl) $.fn.textWidth.fakeEl = $('<span>').hide().appendTo(document.body);
    $.fn.textWidth.fakeEl.text(text || this.val() || this.text()).css('font', font || this.css('font'));
    return $.fn.textWidth.fakeEl.width();
};

$('input').keyup(function(){
if($(this).innerWidth()< $(this).textWidth())
    {
    $(this).val($(this).val().substr(0,$(this).val().length-1));
    }

}); 

在控制台中我收到以下错误:

Uncaught ReferenceError: textWidth is not defined 

你能建议我做什么吗?

1 个答案:

答案 0 :(得分:1)

您可以简单地使用HTML中的maxlength属性来设置字符值的最大长度,这里不需要javascript:

<input type="text" name="foo" maxlength="20" />