jQuery选择问题

Posted

技术标签:

【中文标题】jQuery选择问题【英文标题】:jQuery selection issues 【发布时间】:2013-02-13 20:28:27 【问题描述】:

好的,所以我需要选择一个 td 并让它更改其中的图像,这很好。但是,我需要能够同时显示所选 td 的 id,但我的函数必须选择图像来更改它。有没有办法同时做这两种方法,以便它选择图像,更改它,然后显示带有 td id 的警报?代码如下

jquery:

$(document).ready(function()
  $("td img").click(function() 
    $(this).attr('src', 'images/d.gif');
    alert($(this).attr("td id"));
    return false;
  );
);

html

<div id='plan'>
<table>
 <tr>
   <td class='n' id='a1'><img src='images/a.gif'/></td>
   <td class='n' id='a2'><img src='images/a.gif'/></td>
   <td class='n' id='a3'><img src='images/a.gif'/></td>
   <td class='n' id='a4'><img src='images/a.gif'/></td>
   <td></td>
   <td class='n' id='a6'><img src='images/a.gif'/></td>
   <td class='n' id='a7'><img src='images/a.gif'/></td>
   <td class='n' id='a8'><img src='images/a.gif'/></td>
   <td class='n' id='a9'><img src='images/a.gif'/></td>
 </tr>
 <tr>
   <td class='n' id='b1'><img src='images/a.gif'/></td>
   <td class='n' id='b2'><img src='images/a.gif'/></td>
   <td class='n' id='b3'><img src='images/1.gif'/></td>
   <td class='n' id='b4'><img src='images/1.gif'/></td>
   <td></td>
   <td class='n' id='b6'><img src='images/1.gif'/></td>
   <td class='n' id='b7'><img src='images/a.gif'/></td>
   <td class='n' id='b8'><img src='images/a.gif'/></td>
   <td class='n' id='b9'><img src='images/a.gif'/></td>
 </tr>
 <tr>
   <td class='n' id='c1'><img src='images/1.gif'/></td>
   <td class='n' id='c2'><img src='images/1.gif'/></td>
   <td class='n' id='c3'><img src='images/a.gif'/></td>
   <td class='n' id='c4'><img src='images/a.gif'/></td>
   <td></td>
   <td class='n' id='c6'><img src='images/1.gif'/></td>
   <td class='n' id='c7'><img src='images/1.gif'/></td>
   <td class='n' id='C8'><img src='images/a.gif'/></td>
   <td class='n' id='C9'><img src='images/a.gif'/></td>
 </tr>
 <tr>
   <td class='n' id='d1'><img src='images/1.gif'/></td>
   <td class='n' id='d2'><img src='images/1.gif'/></td>
   <td class='n' id='d3'><img src='images/1.gif'/></td>
   <td class='n' id='d4'><img src='images/1.gif'/></td>
   <td></td>
  <td class='n' id='d6'><img src='images/1.gif'/></td>
  <td class='n' id='d7'><img src='images/1.gif'/></td>
  <td class='n' id='d8'><img src='images/1.gif'/></td>
  <td class='n' id='d9'><img src='images/1.gif'/></td>
 </tr>
 <tr>
  <td class='p' id='e1'><img src='images/1.gif'/></td>
  <td class='p' id='e2'><img src='images/1.gif'/></td>
  <td class='p' id='e3'><img src='images/1.gif'/></td>
  <td class='p' id='e4'><img src='images/1.gif'/></td>
  <td></td>
  <td class='p' id='e6'><img src='images/a.gif'/></td>
  <td class='p' id='e7'><img src='images/a.gif'/></td>
  <td class='p' id='e8'><img src='images/1.gif'/></td>
  <td class='p' id='e9'><img src='images/1.gif'/></td>
</tr>
</table>
</div>

【问题讨论】:

【参考方案1】:

我想你的意思是$(this).parent().attr("id");

您的代码:

alert($(this).attr("td id"));

实际上是在img 标签上寻找一个名为td id 的属性。

【讨论】:

是的,我的问题是使用 alert($(this).attr("td id"));alert($(this).attr("id")); 选择 img 标签,为我提供 undefined 作为输出。这就是我要找的答案,谢谢!

以上是关于jQuery选择问题的主要内容,如果未能解决你的问题,请参考以下文章

jQuery选择问题

jQuery 选择器问题

jQuery 选择器性能

jQuery 参考上的 jQuery 选择器

jQuery 多日期选择器问题

jquery选择器的大写“i”问题