Checkbox 使用Angular 2更新材质精简复选框
我试图在Angular 2中使用Material Design Lite,但在状态更改后更新复选框时遇到问题。见下文 当用户单击“全部”选择所有框时,只有正常的复选框更新。我尝试过使用Checkbox 使用Angular 2更新材质精简复选框,checkbox,angular,material-design-lite,Checkbox,Angular,Material Design Lite,我试图在Angular 2中使用Material Design Lite,但在状态更改后更新复选框时遇到问题。见下文 当用户单击“全部”选择所有框时,只有正常的复选框更新。我尝试过使用componentHandler.upgradeDom()和componentHandler.upgradeAllRegistered(),但没有什么不同 如何使数据绑定工作?在阅读MDL代码后,我觉得MDL复选框的外观只有在看到onchange事件时才会改变。但是仅仅设置“checked”in代码并不能传递更改的
componentHandler.upgradeDom()
和componentHandler.upgradeAllRegistered()
,但没有什么不同
如何使数据绑定工作?在阅读MDL代码后,我觉得MDL复选框的外观只有在看到onchange事件时才会改变。但是仅仅设置“checked”in代码并不能传递更改的事件。所以,在我设置好之后,我戳了戳它
function setChecked(element, bool) {
element.checked = bool;
var evt = document.createEvent("HTMLEvents");
evt.initEvent("change", false, true);
element.dispatchEvent(evt);
}
现在,我并不是说这是正确的或最好的方法,但它对我很有效。在阅读了MDL代码之后,我觉得MDL复选框的外观只有在看到onchange事件时才会改变。但是仅仅设置“checked”in代码并不能传递更改的事件。所以,在我设置好之后,我戳了戳它
function setChecked(element, bool) {
element.checked = bool;
var evt = document.createEvent("HTMLEvents");
evt.initEvent("change", false, true);
element.dispatchEvent(evt);
}
现在,我并不是说这是正确或最好的方法,但它对我很有效。好吧,所以我和你一样也有类似的问题,在谷歌搜索了两三个小时后,我想出了一个解决方案(或者可能只是一个肮脏的黑客,不知道):
标签
我已经更新了您共享的,以便您可以在那里看到它。我希望这能解决你的问题,就像它解决了我的问题一样。好吧,所以我也遇到了类似的问题,在谷歌搜索了两三个小时后,我想出了一个解决方案(或者可能只是一个肮脏的黑客,我不知道):
标签
我已经更新了您共享的,以便您可以在那里看到它。我希望这能解决您的问题,就像它解决了我的问题一样。有没有好办法获取我的复选框元素的引用?有没有好办法获取我的复选框元素的引用?