获取值img src jquery

时间:2016-03-21 16:27:08

标签: javascript jquery html

通过以下结构获取img src值的正确方法是什么。下面的代码是空的。

JS bin(点击笑脸):https://jsbin.com/lelaxam/edit?html,js,output

注意:当我移除图像周围的A HREF标签时,我收到图像src,如果我将A HREF标签放在IMG周围,我就不会收到IMG SRC

HTML:

<td class="sim-row-edit" data-type="testtest" style="padding-right:10px">
<a href="http://crezzur.com" target="_blank">
<img src="https://img.smileys.nl/152/winky.png" alt="" border="0" width="42" height="42" />
</a>
</td>

JQUERY:

if (big_parent.attr("data-type") == 'testtest') {
$("#sim-edit-testtest .image").val(big_parent.children('img').attr("src"));
$("#sim-edit-testtest .url").val(big_parent.children('a').attr("href"));

3 个答案:

答案 0 :(得分:0)

您应该使用jQuery.data来获取data-属性的值,而不是jQuery.attr

成功选择图片后,您就可以像上面一样使用.attr('src')

您的代码中存在问题,但是您试图错误地获取图像。您的HTML代码显示:

<img id="sim-edit-testtest .image" src="https://img.smileys.nl/152/winky.png" alt="" border="0" width="42" height="42" />

所以$('#sim-edit-testtest .image').find('img')完全不合适。选择器中#sim-edit-testtest.image之间不应该有空格,因为它不是孩子,它是两者类<的一个元素strong>和 ID,并且没有子img元素,它已经 img元素。请尝试下面的代码。

if ( big_parent.data('type') == 'testtest' ) {
  $('#sim-edit-testtest.image').attr('src');
}

说实话,在选择器中使用.image也有点没有意义,因为ID在页面中应该已经是唯一的,因此可以进一步简化为:

if ( big_parent.data('type') == 'testtest' ) {
  $('#sim-edit-testtest').attr('src');
}

答案 1 :(得分:0)

你必须像这样使用它:

$('#sim-edit-testtest img').attr('src');

答案 2 :(得分:0)

此代码抓取并显示IMG SRC&amp;您可以在此示例中看到HREF: https://jsbin.com/lelaxam/edit?html,js,output

这里唯一的问题是如果找到它会抓取FIRST img src,如何选择我按下的img src?

$("#sim-edit-testtest .image").val($('img', 'a').attr("src"));
$("#sim-edit-testtest .url").val(big_parent.children('a').attr("href"));