【发布时间】:2014-07-06 10:26:51
【问题描述】:
当用户按下某个键时,我想删除不在 0-9 范围内的字符,但此代码不起作用:(jsfiddle)
$('input').on('keypress', function(event){
var char = String.fromCharCode(event.which)
var txt = $(this).val()
if (!txt.match(/^[0-9]*$/)){
var changeTo = txt.replace(char, '')
$(this).val(changeTo).change();
}
});
我做错了什么? 谢谢
【问题讨论】:
-
我认为使用 JQuery Validation (jqueryvalidation.org) 插件可以做得更好...
-
keypress事件在值改变之前被触发 - 这就是为什么txt不会包含新值
标签: jquery validation