Javascript / HTML复选框获得检查值

时间:2012-12-13 10:48:34

标签: javascript html forms checkbox

我有几个复选框,每个组只有一个可选组件。复选框的示例如下:

   <label class="checkbox inline">
        <input type="checkbox" id="question1option1" name="question1options" value="correct" onclick="SingleSelect('question1option',this)"> 1
    </label>
    <label class="checkbox inline">
        <input type="checkbox" id="question1option2" name="question1options" value="wrong" onclick="SingleSelect('question1option',this)"> 2
    </label>
    <label class="checkbox inline">
        <input type="checkbox" id="question1option3" name="question1options" value="wrong" onclick="SingleSelect('question1option',this)"> 3
    </label>
    <label class="checkbox inline">
        <input type="checkbox" id="question2option1" name="question2options" value="correct" onclick="SingleSelect('question2option',this)"> 1
    </label>
    <label class="checkbox inline">
        <input type="checkbox" id="question2option2" name="question2options" value="wrong" onclick="SingleSelect('question2option',this)"> 2
    </label>
    <label class="checkbox inline">
        <input type="checkbox" id="question2option3" name="question2options" value="wrong" onclick="SingleSelect('question2option',this)"> 3
    </label>

我有一个javascript函数,通过传递单选按钮组(下面)拉出哪个单选按钮被选中,是否有相当于有人可以帮助我获取已选中复选框的值(每个'组中只有一个) ')以类似的方式取悦?

function getRadioValue (theRadioGroup)
    {
        for (var i = 0; i < document.getElementsByName(theRadioGroup).length; i++)
        {
            if (document.getElementsByName(theRadioGroup)[i].checked)
            {
                return document.getElementsByName(theRadioGroup)[i].value;
            }
        }
    }

提前致谢。

1 个答案:

答案 0 :(得分:1)

实际上,如果您更正对SingleSelect或您的标记的调用,相同的功能将起作用;您的标记使用question1options之类的名称,但您对SingleSelect的调用使用question1option之类的名称(最后没有s)。修复它并且它有效:Live Example

显然,当您单击它们时,复选框不会自动取消选择具有相同名称的其他复选框(这是type="radio"的用途)。但我想你知道的。 : - )