似乎我需要将一个div注入主DOM然后解析它。这是正确的方法吗?是否存在样本(甚至像这样的实用程序并不常见)
答案 0 :(得分:5)
DojoCampus和tests directory中的几乎所有内容都有示例:
var pane = dojo.byId('thirdDialog');
thirdDlg = new dijit.Dialog({
id: "dialog3",
refocus:false,
title: "Programatic Dialog Creation"
},pane);
请注意,此特定窗口小部件不需要手动插入DOM - 它会将自身附加到页面的末尾。这里Dialog构造函数的第二个参数 - pane - 是对其内容应该在Dialog中显示的节点的引用。
更新:根据新信息,您应该尝试这样做:
dojo.require("dijit.Dialog");
dojo.addOnLoad(function() {
secondDlg = new dijit.Dialog({
title: "Programatic Dialog Creation",
style: "width: 300px",
content: "Insert text here"
});
secondDlg.show()
});
如此处所示,您可以在content
属性中传递Dialog内容。 (此示例可在包含Dojo的任何页面上的FireBug中执行。)
更新:那么,你想在Dialog中有一个表单吗?这里没什么特别的。嘿,你甚至可以在那边有一个dijit形式!请务必查看DojoCampus article on Dialogs以了解Dialog如何与dijit表单进行通信。
dojo.require("dijit.Dialog");
dojo.require("dijit.form.TextBox");
dojo.addOnLoad(function() {
secondDlg = new dijit.Dialog({
title: "Programatic Dialog Creation",
style: "width: 300px",
content: "<h2>Sample Form</h2>" +
"name: <input dojoType='dijit.form.TextBox' type='text' name='name' id='name'>"
});
secondDlg.show()
});
(此示例在包含Dojo的任何页面上都可以在FireBug中执行。)