Tho*_*sen 11 javascript dojo dialog button
我使用Dojo创建一个简单的对话框来在系统中创建用户.问题是我收到错误:
Tried to register widget with `id==user_submit` but that `id` is already registered
Run Code Online (Sandbox Code Playgroud)
user_submit
,是一个Dojo按钮,我必须完成对话框内的表单.当我通过单击并提交表单关闭对话框时,再次打开对话框没有问题(在按钮上的单击事件中,我有这行代码:
dijit.byId("user_submit").destroy();
Run Code Online (Sandbox Code Playgroud)
但是如果我通过右上角的[x] -link /按钮关闭对话框,我不会破坏按钮,然后在不重新加载页面的情况下无法再次打开对话框.
如何让Dojo破坏按钮或如何重载[X] -link /按钮上的click事件,这样我可以为按钮编写destroy命令?
小智 15
"Developer shouldn't override or connect to this method"
对于"onCancel",请参阅文档.更好的解决方案是:
var myDialog = new Dialog({
id: "myDialogId1",
onHide: function() {
myDialog.destroy()
}
});
Run Code Online (Sandbox Code Playgroud)
找到了解决方案.通过使用dojo.connect().
myDialog.connect(myDialog, "hide", function(e){
dijit.byId("user_submit").destroy();
});
Run Code Online (Sandbox Code Playgroud)
在我发布quistion之后不久会发布这个,但我没有足够的积分,所以这里的答案又来了,只是有点晚了:-)