允许输入文本仅接受数字

时间:2015-09-30 12:05:57

标签: javascript angularjs angularjs-ng-repeat

下面是我的插件,我有一个输入文本,我需要让它只接受数字。我已经尝试使用普通的角度Js表格验证,但事件没有启动。有任何人面临类似的问题,请求分享你的想法..

Link

  <input type="text" ng-model="valuesForOutputs[item.name][i]" 
               ng-disabled="isDisabled(item.name, i)" ng-pattern="/^(\d)+$/"  
                             required   name="value"
                                               placeholder="Enter value">
       <span class="error pop_up" ng-show="targetForm.value.$error.pattern">Please enter only number</span>

1 个答案:

答案 0 :(得分:1)

您可以使用onkeypress textfield事件:

&#13;
&#13;
 var allowOnlyNumbers=function(field){
        if (!String.fromCharCode(event.keyCode).match('[0-9.]') || (field.value.match('[.]') && String.fromCharCode(event.keyCode) == '.'))
           event.preventDefault();
    };
&#13;
 <input onkeypress='allowOnlyNumbers(this)' type="text" ng-model="valuesForOutputs[item.name][i]" 
               ng-disabled="isDisabled(item.name, i)" ng-pattern="/^(\d)+$/"  
                             required   name="value"
                                               placeholder="Enter value">
&#13;
&#13;
&#13;