输入验证无法正常工作

时间:2015-03-16 08:29:10

标签: javascript

我有一个验证函数,我使用其他stackoverflow问题来编写但是这个函数不起作用。使用javascript在输入字段上完成验证。它应该只接受数字(没有零,符号,字母)。有没有人有任何建议?

$(document).ready(function () {   
        $(".myQuantityClass").keypress(function (e) {
            if (e.which != 8 && e.which != 0 && (e.which < 48 || e.which > 57 || e.which == 48)) {
                return false;
            }
        });
});

这是html:

<tr>
<td class='quantity'><input type='text' class='myQuantityClass' value='1' another_id="+product_id+" onkeyup='addQuantity(this," + price + ");'></td></tr>

2 个答案:

答案 0 :(得分:1)

当钥匙正确时,只需返回..

<input type='text' class='myQuantityClass' value='1' onkeyup='addQuantity();'><br/>
<input type='text' class='myQuantityClass' value='1' onkeyup='addQuantity();'><br/>
<input type='text' class='myQuantityClass' value='1' onkeyup='addQuantity();'><br/>
<span id='total'></span>
<script src='jquery.js'></script>
<script>    
$(document).ready(function () {   
  $(".myQuantityClass").keypress(function (e) {
    var k = e.which;
    if ((k > 48 && k < (48+10)) || k == 8 || k == 0) return;
    return false;
  });
});
function addQuantity() {
    var total = 0;
    $(".myQuantityClass").each(function(idx,el){
        total += el.value|0;
    });
    $('#total').text(total);
}
</script>

答案 1 :(得分:1)

这里的演示 - &gt; http://jsfiddle.net/ebzsdk88/1/

$(".myQuantityClass").keypress(function (e) {
     return (e.which>48 && e.which<58);
});