我遇到一个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;
});
}
}
});
}
});
});
答案 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 ==