首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何获取ion-checkbox的值

如何获取ion-checkbox的值
EN

Stack Overflow用户
提问于 2016-04-10 17:57:16
回答 1查看 13.8K关注 0票数 4

我使用以下代码显示我的复选框列表:

代码语言:javascript
复制
 <ion-checkbox ng-repeat="item in listPref"
   ng-model="item.checked" ng-checked="item.checked">
   {{ item.text }}
 </ion-checkbox>

这是我的listPref:

代码语言:javascript
复制
 $scope.listPref = [
    {text: 'Cinema'},
    {text: 'Sport'},
    {text: 'It'} ,
    {text: 'Music'},
    {text: 'Theater'},
    {text: 'Conference'}];

我尝试使用此代码来获取所有选定项目的文本

代码语言:javascript
复制
 for(var i =0 ; i <$scope.listPref.length ; i++){
console.log($scope.listPref[i].checked.text); 
 } 

我在控制台中收到消息undefined Cannot read property 'text' of undefined at Scope.$scope.pref。有人能帮帮我吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-04-10 22:19:32

HTML:

代码语言:javascript
复制
<ion-content>
   <ion-checkbox ng-repeat="item in listPref"
       ng-model="checkItems[item.text]" ng-change="print()">
       {{ item.text }}
   </ion-checkbox>
   <button type="button" name="button" ng-click="save()">Save</button>
</ion-content>

JS (内部控制器):

代码语言:javascript
复制
$scope.listPref = [
    {text: 'Cinema'},
    {text: 'Sport'},
    {text: 'It'} ,
    {text: 'Music'},
    {text: 'Theater'},
    {text: 'Conference'}
];

$scope.checkItems = { }

$scope.print = function() {
    console.log($scope.checkItems);
}

$scope.save = function() {
    var array = [];
    for(i in $scope.checkItems) {
        console.log($scope.checkItems[i]);
        if($scope.checkItems[i] == true) {
            array.push(i);
        }
    }
    console.log(array);
}

您可以随心所欲地处理这些值。print()只打印当前选中或未选中(true/false)的所有值的对象。save()将选中复选框的值存储在数组中,然后打印该数组。你可以随心所欲地处理这些值,这个例子将它们存储在一个数组中,并打印到控制台,这样就可以很容易地看到发生了什么。

如果您有任何问题,请留言。

票数 8
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36528293

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档