【问题标题】:how to select multiple checkboxes in ionic如何在离子中选择多个复选框
【发布时间】:2016-01-27 11:21:48
【问题描述】:

我正在使用 ionic 框架进行应用程序开发,并希望在单击标题复选框或按钮时选择多个复选框。

    <ion-list>
      <ion-checkbox ng-model="filter.color">Colors</ion-checkbox>
      <ion-checkbox ng-model="filter.blue">Red</ion-checkbox>
      <ion-checkbox ng-model="filter.yellow">Yellow</ion-checkbox>
      <ion-checkbox ng-model="filter.pink">Pink</ion-checkbox>

      <ion-checkbox ng-model="filter.number">Number</ion-checkbox>
      <ion-checkbox ng-model="filter.one">1</ion-checkbox>
      <ion-checkbox ng-model="filter.two">2</ion-checkbox>
      <ion-checkbox ng-model="filter.three">3</ion-checkbox>
    </ion-list>

当我点击“颜色”时,三个复选框都应该被点击。当我取消选中其中任何一个时,“颜色”也应该取消选中,只剩下另外两个。

我使用普通的 HTML 复选框和 javascript 实现了这一点,但有点不确定如何使用 ionic。

请帮忙。

谢谢

【问题讨论】:

    标签: checkbox ionic-framework multi-select


    【解决方案1】:

    也许你可以使用这样的东西:

    <ion-list>
       <ion-checkbox ng-model="filter.color" ng-checked="filter.blue && filter.yellow && filter.pink">Colors</ion-checkbox>
       <ion-checkbox ng-model="filter.blue" ng-checked="filter.color">Red</ion-checkbox>
       <ion-checkbox ng-model="filter.yellow" ng-checked="filter.color">Yellow</ion-checkbox>
       <ion-checkbox ng-model="filter.pink" ng-checked="filter.color">Pink</ion-checkbox>
    </ion-list>
    

    编辑

    我发现上面的方法是错误的,因为ngModelngChecked 一起工作不好。这是工作版本:

    <ion-list>
                <ion-checkbox ng-model="filter.color" ng-change="changeAllColors()">Colors</ion-checkbox>
                <ion-checkbox ng-model="filter.blue" ng-change="checkColors()">Red</ion-checkbox>
                <ion-checkbox ng-model="filter.yellow" ng-change="checkColors()">Yellow</ion-checkbox>
                <ion-checkbox ng-model="filter.pink" ng-change="checkColors()">Pink</ion-checkbox>
            </ion-list>
    

    在控制器中:

        $scope.changeAllColors = function () {
                $scope.filter.blue = $scope.filter.yellow = $scope.filter.pink = $scope.filter.color;
       }
            $scope.checkColors = function () {
                    $scope.filter.color = $scope.filter.blue && $scope.filter.yellow && $scope.filter.pink;
                }
    

    【讨论】:

    • 我第一次点击颜色时,三个都被选中。但是当我取消选中其中任何一个时,颜色复选框仍然存在。否则它工作正常。
    猜你喜欢
    • 2022-09-22
    • 2020-12-05
    • 1970-01-01
    • 2016-10-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多