Kendo Treeview中的HTML表单中的mat-checkbox

时间:2018-10-05 18:47:41

标签: angular angular-material kendo-treelist

我们在kendo-treeview标签内放置了form。 在树中,我们使用kendo模板渲染每个项目,如下所示:

<kendo-treeview [nodes]="roleFeatureTree" textField="text"
	kendoTreeViewExpandable kendoTreeViewSelectable
	kendoTreeViewHierarchyBinding childrenField="items">
	<ng-template kendoTreeViewNodeTemplate let-dataItem style="width:100%">
		<span class="float-left">{{dataItem.text}} </span>
		<table>
			<tr>
			
				<td>					
					<mat-checkbox *ngIf="dataItem.Feature.CanView"
						 [checked]="dataItem.ViewAccess"
						(change)="roleFeatureChecked($event,dataItem.Feature.UID,'ViewAccess')">
					</mat-checkbox> 
				</td>				

			</tr>

		</table>
		<div class="float-right">
		</div>
	</ng-template>
</kendo-treeview>

但是,checked绑定不起作用-即[checked]="dataItem.ViewAccess"

由于我们位于html表单中,因此我无法使用[(ngModel)]

我可以确认我们的API已成功将检查的值保存到我们的数据库中。在重新加载页面时,我可以调试和检查树节点数据。该项目确实已检查。

点击复选框后,我们可以看到复选框状态:

    roleFeatureChecked(event, roleFeatureUID:any, rfType:string){
        
        ft[rfType] = event.checked;  // this part working fine.
        
        this.updateChildrenFeatures(roleFeatureUID, rfType, event.checked);
        this.roleForm.markAsDirty();
    }

0 个答案:

没有答案