从组中选择单选按钮

时间:2013-09-26 16:04:56

标签: javascript jquery button radio

我试图以两种方式做到这一点,并且两次的价值都是“”。我需要获得radion按钮的值 - “id”,如果它被选中。

方式1

 var selected = $("#step-1 input[type='radio']:checked");
                if (selected.length > 0) {
                    var answerIDQ1 = selected.val().id;
                }

                var selected = $("#step-2 input[type='radio']:checked");
                if (selected.length > 0) {
                    var answerIDQ2 = selected.val().id;

方式2                     }

                if ($("input[type='radio'].group1").is(':checked')) {
                    var answerIDQ1 = $("input[type='radio'].group1:checked").val().id;

                }

                if ($("input[type='radio'].group2").is(':checked')) {
                    var answerIDQ2 = $("input[type='radio'].group2:checked").val().id;

                }

HTML

<div id="step-1">
                <h2 class="StepTitle">
                    <label style="font-weight: bold; color: #662819;" id="frage1"></label>
                </h2>
                <br />

                <input type="radio" class="group1" name="group1" id="frage1antwort1" value="" onmousedown="this.__chk = this.checked" onclick="if (this.__chk) this.checked = false" />
                <label id="antwort1fuerFrage1"></label>
                <br />
                <br />
                <input type="radio"  class="group1" name="group1" id="frage1antwort2" value="" onmousedown="this.__chk = this.checked" onclick="if (this.__chk) this.checked = false" />
                <label id="antwort2fuerFrage1"></label>
                <br />
                <br />
                <input type="radio"  class="group1" name="group1" id="frage1antwort3" value="" onmousedown="this.__chk = this.checked" onclick="if (this.__chk) this.checked = false" />
                <label id="antwort3fuerFrage1"></label>
            </div>

            <div id="step-2">
                <h2 class="StepTitle">
                    <label style="font-weight: bold; color: #662819;" id="frage2"></label>
                </h2>
                <br />

                <input type="radio"  class="group2" name="group2" id="frage2antwort1" value="" onmousedown="this.__chk = this.checked" onclick="if (this.__chk) this.checked = false" />
                <label id="antwort1fuerFrage2"></label>
                <br />
                <br />
                <input type="radio"  class="group2" name="group2" id="frage2antwort2" value="" onmousedown="this.__chk = this.checked" onclick="if (this.__chk) this.checked = false" />
                <label id="antwort2fuerFrage2"></label>
                <br />
                <br />
                <input type="radio"  class="group2" name="group2" id="frage2antwort3" value="" onmousedown="this.__chk = this.checked" onclick="if (this.__chk) this.checked = false" />
                <label id="antwort3fuerFrage2"></label>
            </div>

1 个答案:

答案 0 :(得分:2)

如果您需要已选中属性的id,请使用.attr()

var answerIDQ1 = selected.attr('id'); // or selected[0].id

selected.val().id尝试获取所选广播的id的{​​{1}}属性