无法输入if语句

时间:2020-11-02 17:08:39

标签: javascript jquery javascript-debugger

我遇到一个jquery脚本问题。无法输入if语句。

有人可以解释一下为什么即使值是1我也不能输入if (partner_type_id === 1)吗?

$(document).ready(function(){

    $('#holder_0_partner_nr').change(function(){

        var partner_type_id = $("#holder_0_partner_type_id").val();
        var partner_nr = $("#holder_0_partner_nr").val();

        console.log(partner_type_id);
        console.log(partner_nr);

        if (partner_type_id === 1)
        {
            $.ajax({
                url: '{{ route('sgc.contracts.create.get.occ.person.data') }}',
                type: 'get',
                data: { partner_nr: partner_nr },
                success: function(response) {

                    if (response !== false)
                    {
                        let data = JSON.parse(response);

                        $("#holder_0_name").val(function() {
                            return data.name;
                        });

                    }

                }
            });
        }
    });

});

2 个答案:

答案 0 :(得分:1)

您确定这是一个数字吗?尝试parseInt(partner_type_id)=== 1或partner_type_id ==='1'?

答案 1 :(得分:1)

.val()可以返回数字,字符串或数组

在这种情况下:

if (partner_type_id === 1)triple ===(严格检查),只有在值和类型都相等时才为真。

由于要与数字进行比较,因此必须确保partner_type_id也是数字,而不是包含“ 1”的字符串。

要么正确解析变量,要么使用double ==