如果图像URL为空,如何检查jQuery并执行某些操作?

时间:2016-03-09 11:46:19

标签: javascript php jquery html

我正在使用PHP从其他网站加载XML Feed。我在HTML中的输出是这样的:

<div class="sponsored">
<div class='box'><img src='http:///xxx.jpg'><a href='xxx'>Title</a></div> 
<div class='box'><img src='http:///xxx.jpg'><a href='xxx'>Title</a></div>
<div class='box'><img src='http:///xxx.jpg'><a href='xxx/'>Title</a></div>
<div class='box'><img src=''><a href='xxx'>Title</a></div>   
</div>

最后一部分没有src url,这意味着Feed没有提供任何图像。我想用jquery检查这个HTML输出,以检查是否没有src url。如果是这样的话,那就把defauly图像放到更好的格式中。

我看到了检查div中图像的jquery脚本。但有没有办法检查图像src是否为空?

=====

更新:

好的,我不确定为什么之前没有用。最后,下面的代码在我的结尾处起作用:

$(".sponsored > .box > img[src='']").attr("src","default.png");

谢谢大家的回答!!这是像我这样的未来新手的最终工作代码:)

<script>
$(document).ready(function(){
$(".sponsored > .box > img[src='']").attr("src","image.jpg");
});
</script>

5 个答案:

答案 0 :(得分:2)

您可以使用attribute equals选择器

执行此操作
$(".sponsored > .box > img[src='']").attr("src","default.png");

答案 1 :(得分:2)

您可以这样使用,此示例将为您提供3 not empty条记录和1 empty记录,您可以在浏览器控制台中查看结果:

&#13;
&#13;
$('.box img').each(function(index,val){
    if($(this).attr('src') == ''){
      console.log('empty');
    }
    else{
     console.log('not empty');
    }
  });
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="sponsored">
<div class='box'><img src='http:///xxx.jpg'><a href='xxx'>Title</a></div> 
<div class='box'><img src='http:///xxx.jpg'><a href='xxx'>Title</a></div>
<div class='box'><img src='http:///xxx.jpg'><a href='xxx/'>Title</a></div>
<div class='box'><img src=''><a href='xxx'>Title</a></div>   
</div>
&#13;
&#13;
&#13;

答案 2 :(得分:2)

$(document).ready(function(){
    $(".sponsored .box img").each(function(){
        if($(this).attr('src') == ''){
            $(this).attr('src') = 'default.png';
        }
    });
});

答案 3 :(得分:1)

if (@MyVar IS NULL)
    print '@MyVar has a NULL value'
else
    print '@MyVar value is not NULL'

答案 4 :(得分:1)

试试这个

$('.box img').each(function(){
if($(this).attr('src') == ''){
  //do something
}
else{
  //do something
}
});