我正在尝试从选定的列表项中获取图像的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?
答案 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应该工作很好。