Jquery - 限制文本输入中的文本,而不是textarea

时间:2011-10-24 18:39:51

标签: jquery ipad ios5

使用jquery如何限制可以在文本字段中输入的字符数?不是指textarea,只是一个普通的文本输入字段。我有一个表格,并通过iPad使用IOS5查看maxlength属性由于某种原因被忽略。如果我使用maxlength = 10,我可以永久键入此字段,它不会停止在10个字符。所以看起来我需要jquery来限制字段。有什么建议吗?

更新

使用maxedison中的示例和Marc B的建议,这是我提出的代码:

$('#textfld','#textform').keyup(function() {

    if($(this).val().length > 20) {

        var text = $(this).val().substring(0,20);
        $(this).val(text);

    }

});

1 个答案:

答案 0 :(得分:4)

您需要绑定到该字段的keydown事件,并且如果该字段中已有10个字符,则阻止它输入字符:http://jsfiddle.net/j6tJ3/

    $('input').keydown(function(e){
        if($(this).val().length > 9 && e.which !== 8 && e.which !== 46){ //if it's too long and the key pressed isn't backspace or delete
            return false;
        }
    });