请我从昨天没有解决这个问题:
当我点击knockout复选框时,按钮将发送true-false值,并通过点击,事件到达driverSelected函数,将打印项目,它工作正常,但我需要用其他信息筛选选定的数据,但它不会更改为空
- HTML格式
<input type="checkbox" data-bind=" checked:isSelectedDriver , click:$root.driverSelected()" />
this.assignedDriver = ko.observable(new Model.Driver());
视图模型功能
driverSelected = () => {
return (item, ui: any) => { // lambda expression
if (item.isSelectedDriver()) {
this.assignedDriver = ko.observable(item.driver);
this.assignedDriver.valueHasMutated;
console.log(this.assignedDriver());
return true
}
}
}
- HTML中的结果显示了默认值,即使删除属性值(wbc_name),该默认值也会清空而不会出错,即show me [ object object }
1条答案
按热度按时间b91juud31#
您正在重新指定
this.assignedDriver
的值,而不是在JS中设置该值。若要将值指派给可观察值,您可以使用您要设定的值来呼叫可观察值,例如:
请参阅对此进行说明的文档。
在这种情况下,修复方法是修改
driverSelected
中if语句的前两行。