我想限制输入文本字段中的字符数。
我正在使用的代码:
function limitText(field, maxChar){
if ($(field).val().length > maxChar){
$(field).val($(field).val().substr(0, maxChar));
}
}
事件是onkeyup。 当我在输入字段中键入一些文本时,光标停留在文本的末尾,但是在文本的开头支持焦点,所以我看不到光标。
可能是个问题。
浏览器是FF,在IE和Chrome上它正常工作
答案 0 :(得分:33)
你也可以这样做:
<input type="text" name="usrname" maxlength="10" />
使用jQuery实现这一点,你可以这样做:
function limitText(field, maxChar){
$(field).attr('maxlength',maxChar);
}
答案 1 :(得分:6)
您的代码在FF中运行。以下是您的代码的略微修改版本:
$('input.testinput').on('keyup', function() {
limitText(this, 10)
});
function limitText(field, maxChar){
var ref = $(field),
val = ref.val();
if ( val.length >= maxChar ){
ref.val(function() {
console.log(val.substr(0, maxChar))
return val.substr(0, maxChar);
});
}
}
的 Demo 强> 的