【发布时间】:2017-04-30 14:18:50
【问题描述】:
每当我按下数据表中的复选框时,我一直试图让一个功能发生。基本上我所拥有的是一个带有默认值的数据表(例如 1 到 10)。然后我为我的组件提供了一组项目,这些项目存在于我的一个对象中(例如 2 和 5)。现在,当网格构建时,它将包含 dataTable 中的所有默认元素,但只有我们对象中的数据旁边会有一个选中的复选框。现在我想做的是让我的 addOrRemove 函数根据复选框的状态执行,这将在数组中添加或删除默认数据对象(在本例中为 [2,5])。所以 2 或 5 可以取消选中,从而从数组中删除,1,3,4,6,7,8,9,10 可以选中并添加到数组中。
为此编写代码我真的没有问题,但是每当我按下复选框时,我都在努力让我的函数被执行。
这就是我在 html 文件中定义复选框的方式:
<p-column header="Included" [style]="{'width':'80px', 'text-align':'center'}">
<template let-object="rowData" pTemplate="body">
<p-checkbox binary="true" [(ngModel)]="object.included" (change)="addOrRemoveRow($event,object.data)"></p-checkbox>
</template>
</p-column>
使用这个我没有触发任何功能。 在 PrimeNg 文档中声明 p-checkbox 有一个事件 onChange。但每当我使用它时,我都会收到错误。
EXCEPTION: Error in http://localhost:3000/app/shared/grid/checkable-grid/checkable-grid.component.html:9:12 caused by:
self.parentView.context.addOrRemoveRow is not a function
每当我将 (change) 更改为 (onChange) 时。
我读到这与我的复选框位于模板内有关,因此无法直接访问我的组件及其功能。对此的任何帮助将不胜感激。
【问题讨论】:
-
PrimeFaces != PrimeNG。点击标签,阅读它,如果你使用它,请告诉我......
标签: javascript checkbox primeng