[英]Accessing dynamically created Dojo checkbox widgets in javascript
我试图有问题地使用Dojo创建复选框。 没有 复选框的选择根据选择的不同而不同。
我能够创建盒子。 问题是当我尝试提交表单并尝试使用dijit.byid(“ ID”)访问装箱的内容时,IE给出了未定义的消息。
下面是代码。 我是安省该复选框,但无法访问它们。
在Javascript中创建复选框的代码:
function displayDefiningC(definingCharacteristicCount,fieldData){
try{
if( (document.getElementById("problemDefChar").style.display == "none") && (definingCharacteristicCount > 0))
{
document.getElementById("problemDefChar").style.display = "block";
**var DefCharSpan = dojo.doc.createElement("span");
for(j = 1; j<=definingCharacteristicCount; j++ )
{
var DefCharCheckbox = new dijit.form.CheckBox();
DefCharCheckbox.id = "PDCDEFCHAR"+j;
DefCharCheckbox.name = "PDCDEFCHAR"+j;
DefCharCheckbox.value = fieldData[j].DefiningCharacter;
DefCharCheckbox.checked = false;
var DefCharLabel = dojo.doc.createElement("span");
DefCharLabel.innerHTML = fieldData[j].DefiningCharacter;
var DefCharBreak = dojo.doc.createElement("br");
DefCharSpan.appendChild(DefCharCheckbox.domNode);
DefCharSpan.appendChild(DefCharLabel);
DefCharSpan.appendChild(DefCharBreak);
dojo.place(DefCharSpan, dojo.byId("DefCharCheckBox"), "last");
}**
}
}catch(e){
alert(e);
}
return;
}
我正在尝试使用以下方式访问这些复选框:
var defchar= dijit.byId("PDCDEFCHAR1");
alert("defchar " +defchar);
但这给未定义。
我已经解决了....问题是我在错误地创建它:)
function displayDefiningC(definingCharacteristicCount,fieldData){
try{
if( (document.getElementById("problemDefChar").style.display == "none") && (definingCharacteristicCount > 0))
{
document.getElementById("problemDefChar").style.display = "block";
var DefCharSpan = dojo.doc.createElement("span");
for(j = 1; j<=definingCharacteristicCount; j++ )
{
var DefCharCheckbox = new dijit.form.CheckBox({
name: "PDCDEFCHAR"+j,
id: "PDCDEFCHAR"+j,
value: fieldData[j].DefiningCharacter,
checked: false,
});
var DefCharLabel = dojo.doc.createElement("span");
DefCharLabel.innerHTML = fieldData[j].DefiningCharacter;
var DefCharBreak = dojo.doc.createElement("br");
DefCharSpan.appendChild(DefCharCheckbox.domNode);
DefCharSpan.appendChild(DefCharLabel);
DefCharSpan.appendChild(DefCharBreak);
dojo.place(DefCharSpan, dojo.byId("DefCharCheckBox"), "last");
}
}
}catch(e){
alert(e);
}
return;
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.