jquery.val()未返回正确的值

jquery .val() not returning correct value

本文关键字:返回 val jquery      更新时间:2024-02-15

在下面的函数中,我想根据页面上选择的其他选项(单选按钮)来显示和隐藏元素。问题是,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 );
        }
    });
});

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

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

由于您提到了单选组,您必须获得选中的单选按钮的值

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