Javascript - keydown事件在android中无效

时间:2016-10-25 06:38:53

标签: javascript android

我创建了这个脚本,不允许用户在输入字段中输入两个以上的小数位。

  var limit = 2;
  jQuery("input.number").keydown(function(e) {
    if(!isNaN(String.fromCharCode(e.which))){
      var inputVal = jQuery(this).val();
      if(inputVal.indexOf(".") > -1){
        var splitted = inputVal.split(".");
        var decimalCount =  splitted[1].length;
        if(decimalCount >= limit){
           e.preventDefault();
        }    
      }         
    }         

    });

该脚本在桌面上运行完美,但是当我在Chrome for Android中测试时,它似乎不起作用。我尝试将事件更改为“on”,“keypress(已经弃用)”,但没有一个选项可以解决问题。有人可以帮帮我吗?

更新1:
我刚注意到即使在桌面版中,该脚本也不适用于numpads。如果我尝试从键盘的右键盘输入,则脚本不起作用。另一方面,如果我从功能键“f1-f12”正下方的顶部数字键入数字,则脚本可以正常工作。也就是说,在移动设备中,它打开了小键盘。猜猜问题出在哪里。

1 个答案:

答案 0 :(得分:-1)

包含jQuery Mobile文件

您需要做的只是在项目中包含一个jQuery文件。任何版本的名为jQuery.mobile.js或非常相似的文件(例如jQuery.ui.js)都可以为您提供帮助。

您可以从以下网址下载:Download | jQuery Mobile 我想建议在为此文件提供路径时使用ResolveUrl。