我想附加一个事件监听器(例如'点击')以编程方式添加JavaScript生成的代码(表中的每一行)。通常情况下,我通常会做的与jQuery脏on
方法,但它不工作(看来我的选择实在是太多了具体的我不知道任何方式以另一种方式做到这一点...如何将事件侦听器附加到javascript生成的html标记?
var STD.prototype.addTableWithEvent(id, eventName, eventFunction)
{
var ident = "webapp_table_"+ id;
var table = angular.element("<table id=\"#"+ ident +"\"></table>");
var line = angular.element("<tr></tr>");
// this is the line not working
jQuery("body").on(eventName, '#'+ ident +' tr', { std: this }, eventFunction);
line.appendTo(table);
this.$compile(table)(this.$scope);
table.appendTo('body');
};
然后
该功能被称为是这样的:
var std = new STD();
std.addTable("example", "click", function() { console.log("working"); });
该表以及添加到页面中,但是当我点击如果我改变了这个事件函数不叫:
jQuery("body").on(eventName, 'tr', { std: this }, eventFunction);
然后,它的工作,但每个表,这不是我想要的。 有没有办法与Angular.js或jQuery做到这一点?
谢谢!
'$ .on'is不_dirty_可言。 – moonwave99
@ moonwave99肮脏,因为我觉得脏使用它。 –