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

获取ion-checkbox值的方法
EN

Stack Overflow用户
提问于 2016-09-03 05:24:47
回答 2查看 2.9K关注 0票数 1

我正在尝试从checkbox中获取值,这样我就可以绑定它。但我一直用条件(真或假)得到它

当我单击复选框时,它会像这样设置我的模型:

9: true,15: true我想要的是一个平面数组,如下所示:

9,15是否有更好的方法从复选框中获取值并将其设置为模型上的数组?

enter image description here

代码语言:javascript
复制
    <ion-checkbox ng-repeat="model in models | filter:query" ng-model="order.models[model.id]" >{{model.model_number}} </ion-checkbox>
</ion-item>
current order: {{order}}

    .controller('compareModelsCtrl',['$scope','$http', '$state' ,
function($scope, $http, $state,$location) {
$http.get('js/data.json').success(function(data){
$scope.models = data;
$scope.whichmodel = $state.params.modelId;
//$scope.toggleStar = function(model){
// model.star = !model.star;
//}
$scope.order = {};
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-09-03 11:19:44

Ionic framework在默认情况下不会这样做。您需要在下面的代码中使用自定义函数,如format。因为我没有你的data.json文件,所以我模仿了两个离子复选框。

代码语言:javascript
复制
     <ion-content ng-controller="LoginCtrl">
       <ion-checkbox  ng-model="order[0]" ng-change="format()" >1 </ion-checkbox>
       <ion-checkbox  ng-model="order[1]" ng-change="format()" >2</ion-checkbox>
    current order: {{modifiedOrder}}
  </ion-content>

并在控制器内部实现了以下功能。

代码语言:javascript
复制
angular.module('ionic.example', ['ionic'])
.controller('LoginCtrl', function($scope) {
$scope.order={};
$scope.format=function(){
  $scope.modifiedOrder=[];
  angular.forEach($scope.order, function(value, key) {
    if(value){
      $scope.modifiedOrder.push(parseInt(key));
    }
});
}
});

你之前的顺序是modifiedOrder,请看这里的工作代码。https://codepen.io/anon/pen/vXYvPG祝你好运!

票数 1
EN

Stack Overflow用户

发布于 2017-12-12 20:03:38

在Html文件中,

代码语言:javascript
复制
<ion-content padding>
  <ion-input type="text" placeholder="What's Your groups name?"></ion-input>
  <ion-list>

        <ion-item *ngFor="let friend of friendList">
          <ion-label>{{friend.name}}</ion-label>
          <ion-checkbox [(ngModel)]="friendsSelected[friend.name]"></ion-checkbox>
        </ion-item>  
    </ion-list>
    <button ion-button  (click)="save()">Save</button>
</ion-content>

在您的TS文件中,我创建了一个变量friendsSelected

代码语言:javascript
复制
 friendsSelected:any={};

   save(){
    var array = [];
    for(var i in this.friendsSelected) {
        console.log(this.friendsSelected[i]);
        if(this.friendsSelected[i] == true) {
            array.push(i);
        }
    }
    console.log(array);
  }
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39300899

复制
相关文章

相似问题

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