我遇到here连接中断到表格元素的问题。
似乎点击"删除单元格"或者"打开帮手"应该解雇其中一个处理程序,但没有任何反应。 Open helper td有两个机会来触发一个处理程序,一次是它所在的行,一次是它所在的行。
有没有人看到这个问题?
感谢。
jsfiddle非常清楚,但如果有一个jsfiddle链接,论坛需要代码,所以这里:
$(document).on('click','tr.deleteCell', function(event) {
alert("deleting cell");
});
答案 0 :(得分:3)
jQuery on
直到版本1.7才被引入,而你的小提琴来源1.6.2。 See the docs
如果您更改版本1.7+的jQuery,tr.deleteCell
的点击处理程序将起作用。
其他两个处理程序应用不正确。他们都看.td
,这是一个类“td”的元素,不一定是td元素。
答案 1 :(得分:2)
您需要升级Jquery以支持on。除此之外还有一些选择问题。
.tr.openHelper
在tr前面不需要一个点,与.td.openh
如果您升级jquery,这应该可以。
$(document).on('click', 'tr.deleteCell', function (event) {
alert("deleting cell");
});
$(document).on('click', 'tr.openHelper', function (event) {
alert("opening helper");
});
$(document).on('click', 'td.openh', function (event) {
alert("opening helper from td");
});
使用您的jquery版本,您应该使用live
或click
事件
$('tr.deleteCell').live('click',function (event) {
alert("deleting cell");
});
$('tr.openHelper').live('click', function (event) {
alert("opening helper");
});
$('td.openh').live('click', function (event) {
alert("opening helper from td");
});