我有一个输入:
<input type="text" id="xpto" value="" maxlength="12" />
我想在maxlength
被击中时触发一个事件。
我现在拥有的:
$("#xpto").keyup(function (e) {
if ($(this).val().length == parseInt($(this).attr("maxlength"))) {
//do stuff
}
});
它几乎是完美的,因为它并不涵盖所有可能性(即:用户复制/粘贴值或选择浏览器的建议值)。
我正在考虑$.bind()
,但我还没有找到任何涵盖我的情景的事件。有什么帮助吗?
答案 0 :(得分:1)
将keyup event
更改为change event
,这将处理应对和粘贴以及任何其他方案。
$("#xpto").change(function (e) {
if ($(this).val().length == parseInt($(this).attr("maxlength"))) {
//do stuff
}
});
答案 1 :(得分:0)
这就是诀窍:
$("#xpto")on('input', (function (e) {
if ($(this).val().length == parseInt($(this).attr("maxlength"))) {
//do stuff
}
});
它包括复制/粘贴;打字;选择建议。