0 0

一个关于Jquery选择的问题10

<a href='javascript:doDeleteOne();' id='1'/>
    <img title='删除' alt='删除' src='/blog/images/ico_del.gif' border='0'>
</a>
<a href='javascript:doDeleteOne();' id='2'/>
    <img title='删除' alt='删除' src='/blog/images/ico_del.gif' border='0'>
</a>
<a href='javascript:doDeleteOne();' id='3'/>
    <img title='删除' alt='删除' src='/blog/images/ico_del.gif' border='0'>
</a>

有若干个这样的元素,在点击“删除”后会执行doDeleteOne();
我怎么取得发生点击的<a>的id
2008年9月04日 09:18

4个答案 按时间排序 按投票排序

0 0

采纳的答案

出于保护代码的考虑,你的href里面应该写的是javascript:void(0);
然后在onclick上触发doDeleteOne(this)的事件
然后在doDelete(name)的方法里可以用name.id来得到A标签的ID

或者 如果没有重命ID的话也可以直接用document.getElementById("1")来获得对象

2008年9月04日 09:38
0 0

不错,楼上所说,应该可以.
不过你的代码太乱,这样的方式,jquery,可以做到分离.

2008年9月04日 10:13
0 0

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

不好意思..写错..

2008年9月04日 09:57
0 0

通过href="javascript:code;"的方式,不会产生event对象.所调用的方法的this属性为window对象...所以没办法判断事件是在哪个链接上发生.

将超链接的代码改为:

<a href="" onclick="doDeleteOne()" >
<img title='删除' alt='删除' src='/blog/images/ico_del.gif' border='0'>
</a>


在doDeleteOne()中..
通过
$(this).attr(id);
获取到的就是触发事件的超链接id.

2008年9月04日 09:56

相关推荐

Global site tag (gtag.js) - Google Analytics