我的“/”在哪里消失?

时间:2014-02-28 01:40:40

标签: javascript jquery ajax

我在无序列表中有一些链接列表,就像这样。

<div ="HomeRecentBlogs">
   <ul>
     </li>
       <li><a href="item1.html">Item1</a></li>
       <li><a href="item2.html">Item2</a></li>
       <li><a href="item3.html">Item3</a></li>
   </ul>
</div>

我正在尝试编写一个脚本,该脚本将进入每个链接页面并抓取图像并将其附加到列表项。

$('#HomeRecentBlogs ul li').each(function(index, element){
    var link = $(element).find('a').attr('href');
    $.get( link, function( data ) {
       thumb = $(data).find('.PostBody img:first').attr('src');
       $(element).append('<a class="thumb"><img="'+ thumb +'" /></a>');  // This is the problem line
    });
});

问题在于,在我生成的代码中,每个列表项都如下所示:

<li>
   <a href="item1.html">Item1</a>
   <a class="thumb"><img="test.jpg></img></a>
</li>

我很确定上面标记的行是导致问题的行

3 个答案:

答案 0 :(得分:1)

我认为您希望<img src="test.jpg"/>不是<img="test.jpg>

所以你需要改变:

$(element).append('<a class="thumb"><img="'+ thumb +'" /></a>');

为:

$(element).append('<a class="thumb"><img src="'+ thumb +'" /></a>');

答案 1 :(得分:0)

您错过了src attribute

$(element).append('<a class="thumb"><img="'+ thumb +'" /></a>');
//--------------------------------------^

相反,您正在构建一个包含<img="someurl">的字符串,该字符串无效。您想使用<img src="' + thumb + '" />...

答案 2 :(得分:0)

您需要为图片提供src属性,因此请使用:

<img src="'+ thumb +'" />

而不是:

<img="'+ thumb +'" />

append()功能中。