未捕获范围错误jQuery错误
有两个问题,底部表达式总是返回未捕获范围错误jQuery错误,jquery,Jquery,有两个问题,底部表达式总是返回true,即使它是false。控制台中也出现了一个错误: 未捕获范围错误:超过最大调用堆栈大小 第二个条件始终为真,因为所选内容始终不同于'46'或'49' 所选不能同时为两个不同的值 我相信你需要一个比较的方法 $(".other_option").change(function() { var selected = $(this).val(); if (selected == 46 || selected == 49) { $(
true
,即使它是false
。控制台中也出现了一个错误:
未捕获范围错误:超过最大调用堆栈大小
第二个条件始终为真,因为所选内容始终不同于
'46'
或'49'
所选
不能同时为两个不同的值
我相信你需要一个比较的方法
$(".other_option").change(function() {
var selected = $(this).val();
if (selected == 46 || selected == 49) {
$(this).parent().find(".js-register-field-other").slideDown();
}
if (selected !== '46' || selected !== '49') {
$(this).parent().find(".js-register-field-other").hide();
}
});
在这种情况下,您也可以编写else
来代替此条件
但是ocoured错误与给定的代码无关。您混合了比较类型
==46
和!='46'
Integer和String compare可以详细说明您要实现的目标。我几乎可以保证第二个if语句逻辑有缺陷。您描述的错误似乎与您显示的代码无关。
if (selected !== '46' && selected !== '49') {
$(this).parent().find(".js-register-field-other").hide();
}