动态单选按钮

时间:2013-05-29 16:08:33

标签: javascript html

我使用以下代码根据数组生成动态单选按钮。 此代码生成多个带有标签的单选按钮。 当我尝试获取选中的单选按钮时,我将无线电组的名称传递给document.getElementsByName()。这返回一个节点列表项包含所有单选按钮。

Console.log()显示节点列表的内容如下:

       [item: function]: 
       0: input#r1
       1: input#r2
       2: input#r3

当我尝试获取节点列表的长度时,我得到0,这样我就无法访问节点列表来获取选中的单选按钮。

      ee.length /// 0

你能帮我找一下它长度为0的原因吗?

//代码

function addradiobutton( arr) {

        var foo = document.getElementById("mydiv");     
        for(var i=0;i<arr.length;i++){
            var label = document.createElement("label");
            var element = document.createElement("input");
            element.setAttribute("type", "radio");
            element.setAttribute("value", arr[i]);
            element.setAttribute("name", "gr");
            element.setAttribute("id", arr[i]);
            if (i==0)
              element.setAttribute("checked", true);
            label.appendChild(element);
            label.innerHTML += arr[i];
            label.innerHTML += '<br />';
            foo.appendChild(label);
        }
    }

1 个答案:

答案 0 :(得分:1)

在添加单选按钮之前,您尝试获取ee的长度(这就是长度为0的原因)。

添加单选按钮后调用警报会给出正确的长度:

addradiobutton(arr);
alert(ee.length);
console.log(ee.length);

更新了小提琴:http://jsfiddle.net/FPqV6/4/