如何在<li> <div>标签中获取img src?</div> </li>

时间:2012-10-19 18:36:06

标签: javascript jquery

我正在尝试从选定的列表项中获取图像的src。 HTML看起来像这样:

<li id="player_7">
  <div class="nailthumb-container square-thumb">
    <img src="../photos/files/7/thumb/6c0f1676cdcb1a9a5215db3e12572450.jpeg" />
  </div>
</li>

我目前可以从所选列表元素中获取玩家ID,如下所示:

的jQuery

$('#myDiv').find("li").click(function() {
    var user_id = $(this).attr('id').substr(7);
});

如何从选定的列表元素中获取img src?

3 个答案:

答案 0 :(得分:7)

如果user_id与玩家ID中的数字相对应,请尝试:

var src = $("#player_" + user_id + " img").prop("src");

否则,分别对于点击的列表项:

$("#myDiv").find("li").click(function() {
    var src = $("img", this).prop("src");
});

答案 1 :(得分:2)

使用jQuery获取图像元素,然后读取其src属性。

$('#myDiv').find("li").click(function() {
    var user_id = $(this).attr('id').substr(7);
   var src = $("img", this)[0].src;
});

答案 2 :(得分:1)

请问$("#myDiv").find("li")"$("#myDiv li")应该做得好的时候你为什么要做$('#myDiv li").click(function() { var user_id = $(this).attr('id').substr(7); var src = $("img",this).attr('src'); // ... }); ?然后,在那时,以下就足够了:

.attr('id').split('_')[1]

就个人而言,我倾向于使用ID上的拆分来获取user_id,({{1}}),但是如果您需要更改前缀或命名,则必须修改代码惯例,我认为这并不重要。它可能会影响性能(因为拆分似乎总是更快,虽然我不记得为什么),如果你有很多这些要一次解析,但除此之外,对于一对一的操作,substr应该工作很好。