0

我怎样才能得到一个简单的调用点击来像这样运行:http: //jsfiddle.net/ftwPS/6/ 我显然缺少一些基本的东西,因为当你点击“点击”时这不起作用。

$('tr').click(function() {
   $(this).find('a').click();
});​

<table>
<tr>
    <td>
        <a href="http://google.com" target="_blank">Google</a>
    </td>
    <td>
        CLICK
    </td>
</tr>
</table>

任何帮助将不胜感激。谢谢你。

4

4 回答 4

2

将您的代码更新为此;

$(function(){
    $('tr').click(function() {
        $(this).find('a')[0].click();
    });
});
​

看到这个小提琴

编辑

更新的答案

于 2012-09-24T15:44:00.413 回答
2

在锚标签上触发点击事件不会做任何事情,因为锚标签没有onclick处理程序 - 该href属性是浏览器处理的完全不同的动物。

如果您想在href单击 时导航到锚标记td,只需执行以下操作:

$('tr').click(function() {
    window.location.href = $(this).find('a').attr('href');
});​

http://jsfiddle.net/ftwPS/15/

于 2012-09-24T15:49:07.017 回答
0

您可以使用dispatchEvent:http: //jsfiddle.net/ftwPS/24/

// Don't fire for the <a> itself, otherwise two windows will open
if($(e.target).is("a")) return;

var evt = document.createEvent("HTMLEvents");
evt.initEvent("click");

// Assuming there is only one <a> inside
$(this).find("a").get(0).dispatchEvent(evt);
于 2012-09-24T15:47:14.607 回答
0
$('tr').click(function() {
   window.open($(this).find('a').attr('href');
});
于 2012-09-24T15:48:29.127 回答