jQuery click在tr上工作正常但不是td

时间:2012-11-20 07:26:48

标签: javascript jquery jquery-selectors

我试图使用Jquery创建一个Live Table Edit,但是我遇到麻烦而不能在我的td'而不是tr

这是我的代码。 http://jsfiddle.net/y7Zck/1/

这几乎按预期工作。我想改变的是,如果你在这个例子中点击了值为150的frameTot,那么函数不会触发。您应该只能点击前两个字段并显示要显示的编辑框。我该怎么做呢?

我尝试改变

$(".edit_tr").click(function()

$(".edit_td").click(function()

似乎没有任何帮助。

2 个答案:

答案 0 :(得分:2)

它不起作用,因为这一行var ID = $(this).attr('id');当你使用tr并且它返回tr ID时它是正确的。当您将其更改为TD点击时,ID会更改。您需要获取TR ID才能使其正常运行。

将其更改为

var ID = $(this).parent().attr('id');

点击此处http://jsfiddle.net/muthkum/y7Zck/2/

答案 1 :(得分:1)

您的脚本正在访问$(this).attr('id'),其中(当然)您的td与您的tr不同。

您需要更新两个侦听器,以使用$(this).closest('tr').attr('id') parseInt($(this).attr('id'), 10)之类的内容(从您的td ID获取数字部分)。