问题描述
我有问题结合使用AngularJS一个数值。
I'm having problems binding a number value using AngularJS.
我已经把上的jsfiddle一个简单的例子:
I've put a simplified example on JSFiddle: http://jsfiddle.net/treerock/ZvdXp/
<div ng-controller="MyCont" ng-app>
<input type="number" min="0" max="50" value="{{value}}" ng-model="value" />
<input type="text" value="{{value}}" ng-model="value" />
<input type="range" min="0" max="50" value="{{value}}" ng-model="value" />
{{value}}
</div>
这应该是三种不同类型的输入字段,如果你更新一个,那么所有的值应该更新。这是工作以外的号码输入。例如如果我在第一个号码框中键入20,它更新的值的所有其他实例。但是,如果我更新的文字或范围输入,输入的号码变为空白。
This should be three different types of input fields, and if you update one, then all values should update. That's working except for the number input. e.g. If I type 20 in the first number box, it updates all other instances of value. But if I update the text or range inputs, the number input goes blank.
我在想,如果这个问题是用数字的方式重新presented /域之间进行转换。例如数字输入是一个浮动和文字输入是一个字符串?
I was wondering if the issue was with how the number is represented/converted between fields. e.g. the number input is a float and the text input is a string?
推荐答案
您说得对,它与字符串VS数字类型的事情。我用了一个 $ scope.watch
语句来解决这个问题:
You're right, it has to do with string vs number types. I used a $scope.watch
statement to fix it: http://jsfiddle.net/ZvdXp/6/
这篇关于角数据绑定 - INPUT TYPE =&QUOT;数&QUOT;的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!