访问div的所有图像并显示未定义或没有src的图像数

时间:2012-12-06 10:07:50

标签: javascript image html src

我想访问特定div中的所有图像,如

<div id="mydiv">
 <div id="mydiv1">
  <img  src="pic.jpg">
  <img  src="pic.jpg">
  <img  src="">`enter code here`
 </div>
 <div id="mydiv2">
  <img href="#">
  <img  src="pic.jpg">
  <img  src="">
 </div>
</div>

它是一个动态页面,我需要做的是从这个div中获取所有图像的src,并检查哪个图像在其src中没有图像链接,并根据此显示警告

我是java脚本的新手,请帮帮我。

5 个答案:

答案 0 :(得分:2)

var imgs = document.getElementById('mydiv').getElementsByTagName('img');
var countImagesWithoutSrc = 0;

var curImg;
for(var i = 0; i < imgs .length; i++) {
  curImg = imgs[i];

  if(!curImg.src || !curImg.src.length) {
    ++countImagesWithoutSrc;
  }
}

alert(countImagesWithoutSrc); //gives you the number of images missing a src attribute

答案 1 :(得分:1)

var images = document.getElementById('mydiv').getElementsByTagName('img');
var emptyimg = [];
for(var i = 0; i < images.length; i++){
    if(images[i].src=="")
        emptyimg.push(images[i]);
}

引用你的评论:

  

是的,我需要计算空白的src图像

要查找具有空src属性的图像数量:

var count = 0
for(var i = 0; i < images.length; i++){
    if(images[i].src)
        count++;
}

答案 2 :(得分:1)

首先添加jQuery库并记下以下代码以查找图像计数。

var imageCount = 0;
$(document).ready(function(){
   $('div').children('img').each(function(index,item){
       if($(this).attr('src') == "" || $(this).attr('src') == undefined)
       {
           count++;
       }
   });
   alert(count);
});

如果您只使用javascript,请使用以下代码: -

 for(j=0;j < document.getElementsByTagName('img').length;j++)
                {
                    if(document.getElementsByTagName('img')[j].getAttribute('src') == "")
                    {
                        count++
                    }

                }

如果不能解决这个问题,或者你想要的不是这样的话,请检查并告诉我。

此致 Durgaprasad

答案 3 :(得分:0)

你的html代码不是很清楚你不能用html文件作为源码,除非它们是带有html扩展名的jpeg文件

<img src="somepage.html">

如果你想链接它们你需要和锚标记
是的 <a href="somepage.html" ><img src="picsrc.jpg"></a> 可能是它的原因

答案 4 :(得分:0)

首先了解jQuery,你可以使用这样的东西:

$('img').each(function(index) {
    alert(index + ': ' + $(this).text());
});