我正在尝试从Bootstrap迁移到Polymer / Paper,我有很多情况需要启用/禁用之前作为ButtonElements访问的按钮,然后是.disabled = true / false。
所以例如我有一个纸质按钮,我试图访问并通过querySelector启用/禁用:
PaperButton nextWeekButton = querySelector("#nextweekbutton");
nextWeekButton.disabled=!_status;
但我收到错误:type 'HtmlElement' is not a subtype of type 'PaperButton' of 'nextWeekButton'.
如果我尝试InputElement
或ButtonElement
,我会收到相同的消息。如果我尝试将其作为HtmlElement
,那么我当然会得到"setter 'disabled' is not defined..."
我打算开始使用属性设置但是真的不应该有办法像ButtonElement
这样做吗?只是想确保我没有遗漏任何东西。
更新:现在我正在做这个
void disableButton(Element _e, bool _status) {
if(!_status) {
_e.setAttribute("disabled","true");
} else {
_e.attributes.remove("disabled");
}
}
答案 0 :(得分:4)
我很确定问题是你的代码是在初始化Polymer之前执行的。如果您有自定义主方法,请参阅https://stackoverflow.com/a/20982658/217408如何初始化Polymer。