我有两个这样的变量:
var th = $(".on", parent.document.body).find('input').eq(0).val();
var th2 = $(".on", parent.document.body).find('input').eq(1).val();
现在我想做一个包含两个变量的if
语句:
if ($(th + th2, parent.document.body).val() == ''){
...
}
这对我不起作用。我无法弄清楚为什么。我也试过其他变种而没有运气。
答案 0 :(得分:3)
如果您要测试2个输入字段是否为空,您可以测试它们存储在变量中的值:
if (th == '' && th2 == '') {
// the 2 input fields are empty
}
答案 1 :(得分:3)
由于jQuery是一个JavaScript框架,因此您可以使用纯JavaScript
if(th == '' && th2 == '') { ... }
答案 2 :(得分:1)
一旦你提取了两个字段值,你就只是进行字符串比较,所以使用普通的Javascript。
但是可能也想忽略用户可能在字段中留下的任何空格,所以我会使用:
if ($.trim(th) === '' && $.trim(th2) === '') {
// both fields are "empty"
...
}
您还应避免重复代码,并在可以的时候利用本机Javascript和DOM调用:
var $in = $(parent.document.body).find('.on input'); // Don't repeat yourself
var th = $in[0].value; // more efficient than $in.eq(0).val()
var th2 = $in[1].value