我将AngularJS与FCSA Number directive一起使用。
我有一个输入字段和一个div,显示模型中的实际数字:
HTML
<div ng-controller="MyCtrl">
<form class="well" name="formTest">
<div class="form-group">
<label for="number">Number*</label>
<input type="input" fcsa-number="{ min: 0, max: 100, maxDecimals: 2 }" class="form-control" id="number" placeholder="Enter number" ng-model="number" ng-model-options="{ updateOn: 'blur'}" />
</div>Number:{{number}}</form>
</div>
JS
var myApp = angular.module('myApp', ['fcsa-number']);
myApp.controller('MyCtrl', function ($scope) {
$scope.number = 12;
});
请注意input元素上的ng-model-options
属性。它强制在输入字段失去焦点时首次更新模型。
使用AngularJS 1.2.1版本在我的应用中正常运行:http://jsfiddle.net/dennismadsen/m30zp4ug/3/。
如果我更新到版本1.3+,它不再起作用: http://jsfiddle.net/dennismadsen/y6Lo72sm/
如果我在输入字段中输入一个新号码并在字段外单击以放松它的焦点,则该号码不会在模型中更新,而是回到12.为什么?
答案 0 :(得分:0)
默认情况下,FCSA-Number会更新模糊,您是否正在执行其他操作?我没有看到FCSA-Number和angular 1.3.13这个问题。
FCSA-Number似乎不受支持,因为那些人没有回应任何问题或打开公关,这是一种耻辱,因为它非常接近非常有用。我希望能够从我的模型中指定一个值作为最小值/最大值,但由于范围分辨率,除非将min和max作为属性实现,否则不会起作用。
Angular 1.3引入了&#39; fractionSize&#39;他们的数字过滤器的参数可能对你有帮助,它允许你指定小数位数。 https://docs.angularjs.org/api/ng/filter/number