首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >获取多个复选框状态作为函数参数

获取多个复选框状态作为函数参数
EN

Stack Overflow用户
提问于 2018-03-22 09:24:41
回答 2查看 80关注 0票数 0

我的复选框代码:

代码语言:javascript
复制
<ion-item>
      <ion-label stacked>Beverage Size</ion-label>
    </ion-item>
    <ion-item>
      <ion-label>Small</ion-label>
      <ion-checkbox [(ngModel)]="drinkSmall" color="blue" checked="true"></ion-checkbox>
    </ion-item>
    <ion-item>
      <ion-label>Regular</ion-label>
      <ion-checkbox [(ngModel)]="drinkRegular" color="blue" checked="true"></ion-checkbox>
    </ion-item>
    <ion-item>
      <ion-label>Large</ion-label>
      <ion-checkbox [(ngModel)]="drinkLarge" color="blue" checked="true"></ion-checkbox>
    </ion-item>

我的提交按钮:

代码语言:javascript
复制
    <button ion-button color="primary" block (click)="addBeverage(
      drinkName,
      drinkmenuDesc,
      drinkPrice,
      drinkCategory,
      drinkSmall,
      drinkRegular,
      drinkLarge
    )" [disabled]="!menuName">
            Add Beverage
          </button>

编辑:我想将所有复选框状态作为函数的参数传递。drinkSmall、drinkRegular、drinkLarge应该是复选框的状态。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-03-22 09:38:44

您应该创建一个保存复选框值的对象。然后,可以将该对象传递给提交函数。有关使用称为“复选框”的模型的示例,请参见下文。

TS:

代码语言:javascript
复制
// A achecboxes object in your controller:
    checkboxes: any = {
       drinkSmall: true,
       drinkRegular: true,
       drinkLarge: true
    }

代码语言:javascript
复制
    <ion-item>
      <ion-label stacked>Beverage Size</ion-label>
    </ion-item>
    <ion-item>
      <ion-label>Small</ion-label>
      <ion-checkbox [(ngModel)]="checkboxes.drinkSmall" color="blue"></ion-checkbox>
    </ion-item>
    <ion-item>
      <ion-label>Regular</ion-label>
      <ion-checkbox [(ngModel)]="checkboxes.drinkRegular" color="blue"></ion-checkbox>
    </ion-item>
    <ion-item>
      <ion-label>Large</ion-label>
      <ion-checkbox [(ngModel)]="checkboxes.drinkLarge" color="blue"></ion-checkbox>
    </ion-item>

    <button ion-button color="primary" block (click)="addBeverage(checkboxes)" [disabled]="!menuName">
            Add Beverage
    </button>
票数 3
EN

Stack Overflow用户

发布于 2018-03-22 10:09:14

在.ts中,您需要创建一个对象

代码语言:javascript
复制
  checkboxes: any = {
    drinkSmall: true,
    drinkRegular: true,
    drinkLarge: true
  };

  data: any = {
    checkboxes:this.checkboxes,
    para1:'',
    para2:'',
    para3:''
  };

.html In 您需要像一样进行更改

代码语言:javascript
复制
 <ion-item>
    <ion-label stacked>Beverage Size</ion-label>
  </ion-item>
  <ion-item>
    <ion-label>Small</ion-label>
    <ion-checkbox [(ngModel)]="data.checkboxes.drinkSmall" color="blue"></ion-checkbox>
  </ion-item>
  <ion-item>
    <ion-label>Regular</ion-label>
    <ion-checkbox [(ngModel)]="data.checkboxes.drinkRegular" color="blue"></ion-checkbox>
  </ion-item>
  <ion-item>
    <ion-label>Large</ion-label>
    <ion-checkbox [(ngModel)]="data.checkboxes.drinkLarge" color="blue"></ion-checkbox>
  </ion-item>

  <button ion-button color="primary" block (click)="addBeverage(data)" [disabled]="!menuName">
    Add Beverage
  </button>

在这里,一个对象数据包含多个checkbox以及para1,para2,para3

console.log输出

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

https://stackoverflow.com/questions/49424847

复制
相关文章

相似问题

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