执行If语句,仅当元素存在时

时间:2015-03-16 10:23:02

标签: javascript jquery

if($("#Prefix").val().trim()=="" && $("#Infix").val().trim()==""){
    return false;
}

在上面的代码中,当元素id PrefixInfix不存在时,它会抛出未定义的错误

TypeError: $(...).val(...) is undefined

我知道,可以通过检查其长度$("#Prefix").lenght>0$("#Infix").lenght>0来避免这种情况。

我的问题是,我们如何在单个if语句本身内进行两项检查。

3 个答案:

答案 0 :(得分:1)

尝试以下代码。检查此link解释元素长度条件

 if(($("#Prefix").length && $.trim($("#Prefix").val()) == "") && ($("#Infix").length && $.trim($("#Infix").val())=="")){ 
    return false;
 }

答案 1 :(得分:1)

if (($("#Infix").lenght>0 && $("#Prefix").lenght>0) && ($("#Prefix").val().trim()=="" && $("#Infix").val().trim()=="")){

//your code here
}

答案 2 :(得分:0)

是的,你可以。


if运算符的

&&语句在返回第一个0时停止检查。
[0 && anything == 0]


所以首先检查一下.length

if ( ($("#Infix").lenght && $("#Prefix").lenght) && (another conditions) ) {
    ...
}