更新列表中的项目,当点击时显示- Angular JS
Update Item in List to be shown when tapped - Angular JS
我有一个显示一些项目的列表,下面是在我的控制器中生成列表的代码:
$scope.multipleOptions = [{ item: '1', checkmark:false}, { item: '2', checkmark:false},{ item: '3', checkmark:false} ];
然后在HTML中写入
<ion-list id="multiple-select-list" class=" ">
<ion-item class=" " ng-repeat="multipleOption in multipleOptions track by $index" ng-click="checkSelected($index)">
<p><b>{{multipleOption.item}}</b></p>
<p class="button-icon ion-checkmark" ng-show="{{multipleOption.checkmark}}"></p>
</ion-item>
</ion-list>
正如你所看到的,当列表加载时所有项目的复选标记都是隐藏的,我有一个名为checkSelected($index)
的函数,当项目被点击时调用,在该函数中我想设置复选标记显示,这是我目前的
$scope.checkSelected = function(modalIndex) {
//this set the checkmark property to true
$scope.multipleOptions[modalIndex].checkmark = true;
//the line below does not work
document.getElementById("multipl-select-list").getElementsByTagName("ion-item")[modalIndex].getElementsByTagName("p")[1].show = true;
}
在上面的方法中,我能够将项目的复选标记变量设置为true,但我遇到的问题是,当项目被点击时,它是否显示正确?我如何设置复选标记的ng-show,使它在点击时显示正确?
编辑解决方案都有效,我只是想添加一些我注意到的行为,当我有ng-show={{multipleOption.checkmark}}
时,ng-hide
类将被添加到<p>
类中,所以即使我将ng-show
设置为true,它仍然不会显示
感谢所有的帮助
HTML:
<ion-list id="multiple-select-list" class=" ">
<ion-item class=" " ng-repeat="multipleOption in multipleOptions track by $index" ng-click="checkSelected(multipleOption)">
<p><b>{{multipleOption.item}}</b></p>
<p class="button-icon ion-checkmark" ng-show="multipleOption.checkmark"></p>
</ion-item>
</ion-list>
在javascript函数中:
$scope.checkSelected = function(data) {
data.checkmark = true;
}
我认为问题出在你的语法上。试着去掉花括号。也看看这个答案
ng-show="multipleOption.checkmark"
相关文章:
- 隐藏/显示 js 代码不会在 IE8 或更低版本上运行
- 关闭网页时没有显示 Js 的工作时间
- Firebug不再显示JS错误
- 如何在标题标签上显示 JS 变量
- 为什么突出显示.js忽略了语言类
- 在某些情况下显示 JS 警报
- 带有文本显示js功能的图像映射 - 某些部分不显示
- 防止显示.js缩放
- 突出显示 pre 标记中的语法,并突出显示.js
- 更改滚动显示.js视口
- 如何使用 bower 构建依赖关系(例如突出显示.js)
- angularjs:不能显示 JS 'typeof' 的返回值
- 提交后显示 JS/Ajax 消息
- 突出显示.js在文本区域中
- 车把内脚本中的 HTML 在使用 ember 时不显示.js + 剑道 UI
- 使用 jQuery.AJAX 在 Div 中显示 JS 图表
- 在样式模式 (jQuery UI) 窗口中显示 JS 警报
- 突出显示.js在 AngularJS SPA 中不起作用
- Gulp uglify 失败并显示 js 解析错误
- 使用Sharepoint列表值时未显示JS警报