我正在研究一个应用程序,它将允许人们选择他们希望表单具有哪些数据字段。我有它的工作,但当我试图将表单字段移动到一个表的一些视觉结构时,我遇到了一个问题。Dojo domConstruct - 将行插入表中
// Now print the form to a new div
array.forEach(selectedFields, function(item, i) {
var l = domConstruct.create("label", {
innerHTML: item + ': ',
class: "dataFieldLabel",
for: item
});
var r = new TextBox({
class: "dataField",
name: item,
label: item,
title: item
});
var a = domConstruct.toDom("<tr><td>" + l + r + "</td></tr>");
domConstruct.place(a, "displayDataForm");
当我运行代码,我可以选择我想要的领域,而是文本框被绘制在诸如屏幕上的文字:
[对象HTMLLabelElement] [小工具dijit.form.TextBox,dijit_form_TextBox_0] [对象HTMLLabelElement] [小工具dijit.form.TextBox,dijit_form_TextBox_1]
而不是打印到屏幕上。我认为这是因为我传递了domConstruct.place文本和对象的混合。有关如何解决此问题的任何想法?谢谢!
克雷格,谢谢你的回应。我的代码仍然不起作用,但现在比以前更接近了。我将你的代码粘贴到我的文件中,现在我收到以下错误: 未捕获的TypeError:无法调用空值的方法'appendChild' –
您是否有一个id为displayDataForm的dom节点? –
是的,我已将所有脚本放在