无法读取 dojo 中未定义的 属性 'set'
Cannot read property 'set' of undefined in dojo
我正在使用集 属性 来启用和禁用基于复选框单击的按钮。在编译时出现这样的错误。 "Cannot read property 'set' of undefined"谁能提前help.thanks
JS:
if(dojo.byId('pickLstValChkbox').checked === false){
dijit.byId('isK9Acccepted').set('disabled', true)
}
else{
dijit.byId('isK9Acccepted').set('disabled', false)
}
HTML:
<input type="CHECKBOX" name="" dojoType='dijit.form.CheckBox' id="pickLstValChkbox" value="CONFIRM_CHECKED">
<button class="defaultButton" dojoType="dijit.form.Button" id="isK9Acccepted">Accept</button>
当您在解析前尝试访问 dijit 控件时,会出现此问题。在做任何事情之前使用 dojo.parser.parse();
。更多详细信息可以在这里找到。 https://dojotoolkit.org/reference-guide/1.6/dojo/parser.html
另外,您使用的是哪个版本的 dojo?看起来您正在使用传统的编码方式。我建议你迁移到 AMD 风格。
第一件事是调用 parser.parse()
(创建和呈现 dijits)
然后要访问您的 dijit,您必须使用 dojo/ready
以确保加载和呈现所有 dijit's
在您的情况下,您希望在选中(未选中)复选框时启用(禁用)按钮,因此,您必须在复选框 dijit
上使用 change
事件
请注意,现代 dojo 在其 html 属性中使用 data-dojo-*
[type, event, id ]insted of dojoType or dojoEvent
...
这里有一个 fiddle 可以帮到你:Fiddle
我正在使用集 属性 来启用和禁用基于复选框单击的按钮。在编译时出现这样的错误。 "Cannot read property 'set' of undefined"谁能提前help.thanks
JS:
if(dojo.byId('pickLstValChkbox').checked === false){
dijit.byId('isK9Acccepted').set('disabled', true)
}
else{
dijit.byId('isK9Acccepted').set('disabled', false)
}
HTML:
<input type="CHECKBOX" name="" dojoType='dijit.form.CheckBox' id="pickLstValChkbox" value="CONFIRM_CHECKED">
<button class="defaultButton" dojoType="dijit.form.Button" id="isK9Acccepted">Accept</button>
当您在解析前尝试访问 dijit 控件时,会出现此问题。在做任何事情之前使用 dojo.parser.parse();
。更多详细信息可以在这里找到。 https://dojotoolkit.org/reference-guide/1.6/dojo/parser.html
另外,您使用的是哪个版本的 dojo?看起来您正在使用传统的编码方式。我建议你迁移到 AMD 风格。
第一件事是调用 parser.parse()
(创建和呈现 dijits)
然后要访问您的 dijit,您必须使用 dojo/ready
以确保加载和呈现所有 dijit's
在您的情况下,您希望在选中(未选中)复选框时启用(禁用)按钮,因此,您必须在复选框 dijit
上使用change
事件
请注意,现代 dojo 在其 html 属性中使用 data-dojo-*
[type, event, id ]insted of dojoType or dojoEvent
...
这里有一个 fiddle 可以帮到你:Fiddle