2011-05-02 60 views
0

我试图使用以获取图像SRC这样的:var SRCNow = $('#'+ID+'.item').attr("src");jQuery的获取ID

在此:

<a id='17' href='#' name='item' class='tilelink'><img title='17' id='17' style='background:red'; class='item' src='line_tile/t17.png' /></a> 

所以,当我做的点击图片点击图像...:var ID = $(this).attr("id");

然后我做alert(SRCNow);和我得到undefined ....当它应该说SRC。

+0

似乎有不等于ID + .'item一个id“在你的HTML – DhruvPathak 2011-05-02 04:28:13

+0

为什么不使用'$(”项目” ,这)'而不是拉出'id'并连接它? – 2011-05-02 04:28:56

回答

5

问题是你有两个具有相同ID的元素。这是不允许的。

http://www.w3schools.com/tags/att_standard_id.asp

定义和用法

id属性指定一个唯一的ID HTML元素。

该ID在HTML 文档中必须是唯一的。

+0

啊,我不明白......谢谢。 – nn2 2011-05-02 04:30:07

0

的问题是,你有一个链接,以及与ID 17图像。ID应该是唯一的。此外,以数字开头的ID无效(据我记忆)。

首先使您的ID唯一。然后,当您尝试抓取图像src时,您不需要类过滤器。

<a id='link-17' href='#' name='item' class='tilelink'> 
    <img title='17' id='img-17' style='background:red'; class='item' src='line_tile/t17.png' /> 
</a> 

var SRCNow = $('img-17').attr('src'); 

或者可以遍历您的图像

var srcs = []; //array of srcs 
$('images.item').each(function(){ 
    srcs.push($(this).attr('src')); 
})