【发布时间】:2015-12-15 11:18:01
【问题描述】:
经过两个小时的研究和尝试,当插入无效值时,我无法清除数字输入字段。我已经尝试将 ng-model 设置为 null、undefined 和 '' 但没有一个有效。
只有 Firefox 有这个问题,我在最新版本的 Chrome 和 IE 上测试过。
我的简化代码是:
HTML
<div ng-controller="MyCtrl">
<form name="frmToClear">
<input type="number" name="numField" ng-model="numberModel">
</form>
<button ng-click="clearInput()">Clear input</button>
</div>
Javascript
var myApp = angular.module('myApp',[]);
function MyCtrl($scope) {
$scope.numberModel = null;
$scope.clearInput = function() {
$scope.numberModel = null;
};
}
这是我还添加了一个“setZero”函数的小提琴,以表明将模型更改为有效的非空输入运行良好:https://jsfiddle.net/McGiogen/vhx87yq6/
重现
错误只是用 Firefox 打开链接,在输入字段中写入任何非数字字符串,然后按“清除输入”按钮。什么都不会发生。
经过测试的浏览器:
- 火狐40.0.3
- Firefox 开发版 42.0a2
- 铬 45.0.2454.93
- IE 11.0.9600.17959
【问题讨论】:
标签: angularjs input numbers reset