Jquery .val()函数检查单选按钮的值

时间:2017-01-19 09:29:40

标签: javascript jquery

以下是检查每个单选按钮值的逻辑。我正在使用他们身份的一部分来掌握单选按钮。但是,我的代码总是根据我的第一个单选按钮的值返回一个值。我希望它返回每个单选按钮的值。例如,如果单击单选按钮是,则返回的值应为1.否则,0。任何可以更新我的代码的机构。

$('.YesNoRadio').each(function() {

    if ($('[id*="YesNo_RadioButtonList_"] input[type="radio"]:checked').val() == 1) {
        //$('[id*="AddAttachment"]').trigger('click');
        $('[id="upload"]').click();
    }

});

HTML:

//For yes radio button
<input id="_YesNo_RadioButtonList_0" type="radio" name="YesNo_RadioButtonList" value="1">
//For no
<input id="_YesNo_RadioButtonList_0" type="radio" name="YesNo_RadioButtonList" value="0">

4 个答案:

答案 0 :(得分:3)

您的选择器不正确,从选择器中删除空格。当您使用if($('[id*="YesNo_RadioButtonList_"]:radio:checked').val() == 1) $('[id="upload"]').click(); 时,它表示您要定位子元素,即Descendant Selector (“ancestor descendant”)

.each()

而且,您不需要{{1}}

答案 1 :(得分:0)

//For yes radio button
<input class="YesNoRadio" id="_YesNo_RadioButtonList_0" type="radio" name="YesNo_RadioButtonList" value="1">
//For no
<input class="YesNoRadio" id="_YesNo_RadioButtonList_0" type="radio" name="YesNo_RadioButtonList" value="0">

<script type="text/javascript">
    $('.YesNoRadio').each(function() {
        if ($(this).is(':checked')) {
            alert($(this).val());
            //code for yes radio button
            $('[id="upload"]').click();
        }else{
            alert($(this).val());
            //code for no radio button
        }
    });
</script>

答案 2 :(得分:0)

一个对我有用的方法是在html输入标记中设置相同的每个单选按钮是你的列表,你做了:

<input id="_YesNo_RadioButtonList_0" type="radio" name="YesNo_RadioButtonList" value="1">
<input id="_YesNo_RadioButtonList_0" type="radio" name="YesNo_RadioButtonList" value="0">

然后我会这样做是我的JS与JQuery。

var radioButtonValue = $("input[name='YesNo_RadioButtonList']:checked").val();

这应该为您提供单选按钮的值。在您的情况下,该值在输入标记中预设。

答案 3 :(得分:-1)

试试此代码

$('.YesNoRadio').each(function() {
    if ($('[id*="YesNo_RadioButtonList_"] input[type="radio"]:checked').val() == 1) {
       //$('[id*="AddAttachment"]').trigger('click');
       console.log($(this).val());
       $('[id="upload"]').click();
    }
});