event.preventDefault()在Android Ionic中无效

时间:2017-05-03 11:13:44

标签: css angularjs ionic-framework

我正在尝试构建一个输入字段,它只接受数字作为输入,因此它的输入类型是数字。 但Android设备上可见的键盘有一个“。”键盘上的按钮,所以我试图阻止该按钮。使用下面的代码

IFS=', ' credArray=(`echo "$cred" | tr -d '"[]'`)

229是“。”的ASCII码。 Android中编号键盘的关键。 请帮帮我

更新: 1)这应该适用于移动设备。 2)输入类型是“数字” 所有解决方案都适用于浏览器,但不适用于移动设备。

谢谢 Sandip Jadhav

2 个答案:

答案 0 :(得分:0)

我不确定,但你可以尝试不同的方法

我认为$scope.inputngModel包含输入值

onKeyDown = function(event){
      console.log('KEY: ' + event.which);
      if (event.which == 250 || event.which == 229) {
            $scope.input = $scope.input.substring(0, $scope.input.length - 1);
      }
  };

警告仅当光标位于字符串末尾

时才会起作用

另请查看此主题Restricting Characters in Input Field to a Set of Characters

答案 1 :(得分:0)

最好使用preventDefault作为内联

<input name="firstname" type="text" ng-model="contact.first_name" required="required" placeholder="first name" ng-keypress="($event.which==32 || $event.which==229)?$event.preventDefault():''">

它将检查两个键并防止插入它 无力注意它不会阻止粘贴这些代码。我已经添加了键代码32用于测试目的,它阻止插入spaceba,将其更改为您的要求 有关详情,请参阅此笔http://codepen.io/edisonpappi/pen/YVxLxX?editors=1010