我需要确保动态生成的输入字段的输入只接受数字。
这个jsfiddle完全符合我的要求,但它不允许动态生成的字段:http://jsfiddle.net/lesson8/HkEuf/1/。
我已修改它以使用某个功能,但它没有做任何事情。我有什么想法我做错了吗?
HTML:
Number : <input onkeydown="test(this);" type="text" name="quantity" id="quantity" /> <span id="errmsg"></span>
使用Javascript:
function test(input) {
//called when key is pressed in textbox
input.keypress(function (e) {
//if the letter is not digit then display error and don't type anything
if (e.which != 8 && e.which != 0 && (e.which < 48 || e.which > 57)) {
//display error message
$("#errmsg").html("Digits Only").show().fadeOut("slow");
return false;
}
});
}
CSS:
#errmsg
{
color: red;
}
答案 0 :(得分:0)
您应该使用.delegate
。
$('#container', 'input', 'keypress', function() {
// your code here
});
答案 1 :(得分:0)
试试这个:
<input value="" onkeypress="return onlyNumber(event)" />
<script type="text/javascript">
function onlyNumber(e) {
e = (e) ? e : window.event;
var charCode = (e.which) ? e.which : e.keyCode;
if (charCode > 31 && (charCode < 48 || charCode > 57)) {
return false;
}
return true;
}
</script>