AngularJS:增加输入值

时间:2016-10-22 13:49:39

标签: javascript angularjs

我在html中有一个按钮和一个输入:

<button ng-click="addQuantity()" class="btn btn-xs btn-info pull-right">+</button>
<input readonly type="text" value="{{ quantity || 1 }}" class="form-control totalQuantity pull-right"></input>

AngularJS代码:

$scope.addQuantity = function(id){

}

我只是想在每次点击按钮时增加input.value(默认为1)。我会自己做,但我不知道最有效的方法。

如果您有任何提示,请分享。谢谢!

修改 id是来自ng-repeat的id

<li class="list-group-item" ng-repeat="(id, product) in itemsToBuy">

每次重复li元素都会添加输入。

编辑2:整个应用程序都有一个小提琴:https://jsfiddle.net/scgsc7or/3/

3 个答案:

答案 0 :(得分:1)

只需将$ scope变量递增1

User-Agent

<强>控制器

 <li class="list-group-item" ng-repeat="product in itemsToBuy">
    <input readonly type="text" value="{{product.quantity}}" class="form-control totalQuantity pull-right">
    <button ng-click="addQuantity(product)" class="btn btn-xs btn-info pull-right">+</button>
  </li>

<强> DEMO

答案 1 :(得分:1)

<button ng-click="addQuantity(id)" class="btn btn-xs btn-info pull-right">+</button>
<input readonly type="text" value="{{product.quantity || 1}}" class="form-control totalQuantity pull-right"/>

传递用作数组索引的id,以识别addQuantity中的确切产品。

只需简单地增加数量即可。如果数量未定义 - 它等于1,否则 - 增量

$scope.addQuantity = function(id){
    if(!$scope.itemsToBuy[id].quantity){
       $scope.itemsToBuy[id].quantity = 1;
    }else{
        $scope.itemsToBuy[id].quantity++;
    }
}

答案 2 :(得分:1)

我认为您应该直接发送产品......就像这样

ggplot(A %>% filter(n > 0) %>% mutate(group=droplevels(group)) %>%
       group_by(group) %>% mutate(m=n()),
       aes(x=group, y=n, group=mpk, fill=mpk, width=0.9*m/max(m))) + 
geom_bar(position=position_dodge(width=0.9), stat='identity') +
coord_flip()

这可以解决您的问题。