jquery .val()没有返回正确的值

时间:2013-12-03 10:04:57

标签: javascript jquery forms return-value

在下面的功能中,我想根据页面上选择的其他选项显示和隐藏元素(单选按钮)。问题是,var complianceMember总是返回它所属的单选按钮集的第一个值,而不是所选的值,为什么会这样?其他两个变量返回正确的值。

$(document).ready(function() {
    $('input[name="waste-management-plan"]').change(function () {

        var producerType = $('input[name="producertype"]').val();
        var complianceMember = $('input[name="compliance-member"]').val();

        if ($(this).val() == 'Y' && complianceMember == 'Y' && producerType == 'both' ) {
            $('.producerOp3').show();
        } else {
            $('.producerOp3').hide();
            console.log( $(this).val(),complianceMember,producerType );
        }
    });
});

2 个答案:

答案 0 :(得分:4)

您需要使用过滤器来查找已选中的单选按钮,然后获取其值。您可以使用:checked选择器

var complianceMember = $('input[name="compliance-member"]:checked').val();

答案 1 :(得分:0)

由于您提到了无线电组,您必须获取已选中的单选按钮的值

var complianceMember = $('input[name="compliance-member"]:checked').val();