我正在做一个应用程序,当您单击输入
时,会显示一个虚拟键盘。递减应该是递减 ng-model food.Pezzi
,并且它工作正常。但增量不起作用:它添加了一个“1”。为什么? PLUNKER CODE
(奇怪的是,你在按增量之前按了减量,增量起作用了......)
标记
<td>
<a data-role="button" data-theme="e" ng-click="food.Pezzi = food.Pezzi-1; "
style="background-color: rgba(246, 246, 246, 0.2); border-color: rgba(0, 0, 0, 0.27); text-shadow: 0px 1px 0px #F3F3F3;color: #333;">
Decrement
</a>
</td>
<td>
<a data-role="button" data-theme="b" class="zero" ng-click='food.Pezzi=food.Pezzi.toString()+"0"'>
0
</a>
</td>
<td>
<a data-role="button" data-theme="e" class="pos" ng-click='food.Pezzi = food.Pezzi + 1'
style="background-color: rgba(246, 246, 246, 0.2); border-color: rgba(0, 0, 0, 0.27); text-shadow: 0px 1px 0px #F3F3F3;color: #333;">
Increment
</a>
</td>
谢谢您的建议
最佳答案
将代码更改为 var itemToClone = { "Selection": "", "Pezzi": 0 };
而不是 var itemToClone = { "Selection": "", "Pezzi “:”“};
。您正在使用空字符串进行初始化,并将其附加到字符串而不是添加数字。
其他地方也是如此。修改输入后,您必须使用 parseInt
对字符串进行类型转换。
更新
这很奇怪。让我们在 Controller 中添加一个方法,如下所示:
$scope.inc = function(food) {
food.Pezzi = food.Pezzi || "0"
food.Pezzi = parseInt(food.Pezzi.toString()) + 1;
};
现在,将增量按钮的 ng-click
修改为如下所示:ng-click="inc(food)"
关于javascript - ANGULAR 中的增量数不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33434084/