Cordova输入类型号码maxlength在android中不起作用?

时间:2016-07-01 12:48:39

标签: javascript jquery angularjs html5 cordova

我想显示android号码垫并应用最大限制2。 我使用了<input type="number" min="0" max="99"/>。此代码仅适用于浏览器,而不适用于Android设备。

有没有人知道这种情况的合适解决方案?

1 个答案:

答案 0 :(得分:1)

<input type="number" min="0" max="99"/> 

适用于网络浏览器。

在angularjs中

<input type="tel" ng-model="value"/>
必须使用

,这为键盘提供了数字和符号。

angularjs 中利用 $ watch 的概念,可以实现最大限制和输入类型作为数字。

  

如果新值长度大于2,则设置文本字段的值   旧的价值

$scope.$watch('value', function(newVal, oldVal) {
   if(newVal.length > 2) {       
      $scope.value = oldVal;
   }
}

以下是整数的正则表达式

 var onlyNumbers = /^\d+$/;
  

如果新值与正则表达式匹配,则返回一个   数组或其他null。如果返回类型为null,则为text的值   字段设置为旧值

  var r = newVal.match(onlyNumbers);
    if(r===null){
      $scope.value = oldVal;
    }

完整的解决方案包含在下面的plunker链接中:

https://plnkr.co/edit/WrZ3xKs9EcXOvCemuIck?p=preview