亲爱的我创建了一个复选框,它会显示多个项目的名称及其价格,用户可以选择他/她想要的内容。在ng-model中,我需要项目的名称和价格。这是我找到的一个示例代码。
<div class="checkbox" ng-repeat="item in items">
<label>
<input ng-model="data[item.name + '||' + item.price]" type="checkbox" id="{{item.id}}">
{{item.name}} with {{item.price | currency}}
</label>
</div>
稍后使用字符串拆分器获取值。有什么方法可以使用两个不同的ng-model获得item.name和item.price?
答案 0 :(得分:3)
不,你不能将2 ng模型用于同一个元素,它也没有任何意义。
只需将ng-model
设置为项目上的属性selected
<input ng-model="item.selected" type="checkbox" id="{{item.id}}">
由于商品对象本身有价格和名称,因此您可以轻松过滤商品selected
及其各自的名称和价格。
例如:
var selectedItems = $scope.items.filter(function(itm){return itm.selected});
如果您想将ngmodel
设为ID,并将值设置为项目属性(您在问题中的方式),您也可以使用ng-true-value
(虽然我认为以前的方法应该就够了)
<input ng-model="data[item.id]" ng-true-value="{{item.name + '||' + item.price}}" type="checkbox" id="{{item.id}}">