html输入字段对手机号码的限制

时间:2013-02-15 15:02:00

标签: javascript jquery html5

我有一个输入字段,我只希望能够输入数字0 - 9而不是其他内容。它是一个移动网站,因此它在手机上运行非常重要。我发现以下代码在桌面上完美运行但在手机上没有做任何事情。

$("#phone").keypress(function (event) {
    var code = (event.keyCode ? event.keyCode : event.which);
    if (code < 48 || code > 57) event.preventDefault();
});

有没有人知道如何在手机上实现与上述代码相同的功能?

2 个答案:

答案 0 :(得分:2)

html5介绍了一些可以使用的新输入类型:

<input type="number" name="phone" />

请参阅http://www.w3schools.com/html/html5_form_input_types.asp

答案 1 :(得分:2)

这是关键代码

/*Only number*/
 $(".numb").keydown(function(event) {
            if ( event.keyCode == 190 || event.keyCode == 46 || event.keyCode == 8 || event.keyCode == 9 || event.keyCode == 27 || event.keyCode == 13 || (event.keyCode == 65 && event.ctrlKey === true) || (event.keyCode >= 35 && event.keyCode <= 39)) {

        if(event.keyCode == 190){
            if($(this).val().indexOf('.')!=-1){
                  event.preventDefault();
                }

            }
        return;
    }
    else {

        if (event.shiftKey || (event.keyCode < 48 || event.keyCode > 57) && (event.keyCode < 96 || event.keyCode > 105 )) {

            event.preventDefault();
            }
    }
});