0

我正在尝试获取并将布尔值设置为“检查值”。我想事先调用一个函数 isItTrue 来设置变量'checkvalue'。如果该框(未)选中/并且我选中它,它应该调用函数doSomething()。我正在尝试,<input type="checkbox" id="{{ class.id }}" ng-init="checkBoxValue=isItTrue(class.id)"[(ngModel)]="class['checkBoxValue']"/>但它似乎不起作用。有什么建议么?

    <table>
      <thead>
      <tr>
        <th>class</th>
        <th>subjects</th>
        <th>class speaker</th>
      </tr>
      </thead>
      <tbody>
      <tr *ngFor="let class of classes">
        <td>{{ class.name }}</td>
        <td>
          <div class="form">
            <input type="text" class="md-input-text" placeholder=" " value=" " [(ngModel)]="subject"/>
            <label class="md-desc">subjects</label>
          </div>
        </td>
        <td>
          <div class="md-checkbox">
            <input type="checkbox" id="{{ class.id }}" [(ngModel)]="class['checkBoxValue']"/>
            <label for="{{ class.id }}"></label>
          </div>
        </td>
      </tr>
      </tbody>
    </table>
4

1 回答 1

0

在组件初始化上做一些事情:

import { OnInit } from '@angular/core';

并让您的组件像实现它一样

export class App implements OnInit{ 
}

你可以从 ngOnInit 生命周期钩子方法中调用你的方法:

ngOnInit() {
    isItTrue();
}

将布尔值设置为检查值: 您应该有一个组件变量并将其绑定到输入:

[(ngModel)]="checkvalue"

要在输入更改时调用您的函数,您可以使用 change 事件来实现:

(change)="doSomething()"

在此函数中,您可以访问this.checkvalue已绑定的输入值。

有关整个代码,请参见此planker 。希望能帮助到你 :)。

于 2017-08-12T20:27:37.363 回答