2

我正在尝试以下代码:

            if(!$('img.photoPreview', this).attr('src') == '') {
                    alert('empty src...');
            }

但它在编辑器中出错,因为没有正确完成。

有人可以建议有什么问题吗?

注意:我正在尝试检查 - 如果不是这个图像 src 是空的......

谢谢

4

4 回答 4

15

Placing the ! at the start negates the $('img...') not the whole expression. Try:

if ($('img.photoPreview', this).attr('src') != '') {
    alert('empty src');
}
于 2013-04-15T09:01:59.780 回答
6

!运算符将在==运算符返回的结果(布尔值)之前进行评估,并将应用于选择器返回的对象,而不是运算符boolean返回的对象==

改变

if(!$('img.photoPreview', this).attr('src') == '') 

if($('img.photoPreview', this).attr('src') != '') 
于 2013-04-15T09:02:19.090 回答
4

It's due to "src" being undefined. You should use this (it's more efficient than != ""):

if(!$('img.photoPreview', this).attr('src')) {
     alert('empty src...');
}

You can see this working here: http://jsfiddle.net/GKHvQ/

于 2013-04-15T09:02:12.070 回答
3

@adil & @scoot

if($('img.photoPreview', this).attr('src') != '') 

此条件表示如果属性 src 不为空。但条件是检查 src 属性是否为 ''。

更好的是使用

if($('#photoPreview').attr('src') == '') {
 alert('empty src...');
}
于 2013-04-15T09:08:44.930 回答