这是在JS和jQuery代码中使用的“不等于”符号吗?
感谢您,Jean。
!== OR !=
都没有起作用
这是我正在使用的代码
var val = $('#xxx').val();
if (val!='') {
alert("jello");
}
感谢您,Jean。
!== OR !=
都没有起作用
这是我正在使用的代码
var val = $('#xxx').val();
if (val!='') {
alert("jello");
}
JQuery中的相等性测试与“标准”JavaScript没有任何区别。
!=
表示“不等于”,但是!==
确保两个值具有相同的类型。例如,1 == '1'
是true
,但1 === '1'
不是,因为左侧的值为数字而右侧的值为字符串。
根据你的示例,我们无法确定正在发生什么。我们需要一个真实的示例。
.val()被用于从表单中检索或设置输入的值,这是您想要做的吗?如果不是,也许您想使用.text()或.html()。
如果这确实是您想要做的,也许您的选择器有误,并且它会向您返回null,并且null不等于'',或者您实际上在那里拥有数据,例如空格。 :)
可能你的 #xxx 节点中有空格,这就是为什么 !== 和 != 都失败的原因,你可以尝试以下方法来测试非空格字符
var val = $('#xxx').val();
if (/\S/.test(val)){
alert('jello');
}
注意:我假设jQuery的.val()不会返回null,因为它在jQuery源代码中有这样一行
return (elem.value || "").replace(/\r/g, "");
if (val && /\S/.test(val)){
alert('jello');
}
它可以与jQuery和普通的JavaScript一起使用。
您应该检查(警报/调试)您的val
变量的值和空值。
您还应该检查$('#xxx').length
是否获取元素,否则您将得到错误,因此您的if条件将为false。