繁体   English   中英

在JavaScript中访问动态创建的Dojo复选框小部件

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM