我的应用程序是Ionic和Angular。我有一个列表,其中包含来自数组的复选框项。我想要的是当用户点击一个复选框项时,它们被添加到一个单独的列表中,即我的选择。
代码是: App.js
$scope.myList = [
{name:'Choice one'},
{name:'Choice two)'}
];
HTML视图:
<div>
<ul class="list">
<li class="item item-checkbox" ng-repeat='item in myList | filter: search'>
<label class="checkbox">
<input type="checkbox" ng-model="option.myList[$index]">
</label>
<p ng-bind-html="item.name"></p>
</li>
<ul>
</div>
所以我希望一旦点击的选项被添加到上面的列表中,该列表与上面的html类似。有任何想法吗?
答案 0 :(得分:0)
可能是这样的:
public void setModifyMode(boolean modifyMode) {
mModifyMode = modifyMode;
for (int i = 0; i < mActionBar.getTabCount(); i++) {
View parent = (View) mActionBar.getTabAt(i).getCustomView().getParent();
parent.setEnabled(mModifyMode);
}
}
HTML:
$scope.myList = [
{name:'Choice one'},
{name:'Choice two)'}
];
$scope.myChoices = [];
$scope.stateChanged = function(checked){
if(checked){
$scope.myChoices.push(checked);
}else{
var index = $scope.myChoices.indexOf(checked);
$scope.myChoices.splice(index,1);
}
}
答案 1 :(得分:0)
使用您的代码查看此演示:http://play.ionic.io/app/89d16b54285b
您无需创建单独的列表即可在其他位置显示所选选项。只需将selected
属性与每个对象绑定<input type="checkbox" ng-model="item.selected">
<ul class="list">
<li class="item item-checkbox" ng-repeat='item in myList | filter: search'>
<label class="checkbox">
<input type="checkbox" ng-model="item.selected">
</label>
<p ng-bind-html="item.name"></p>
</li>
<ul>
现在,您可以在任何地方使用相同的myList
来查看使用过滤器选择的内容
<div class="item" ng-repeat="item in myList | filter:{selected:true}">
{{item.name}}
</div>