0
我有一个表中的DOM元素如何在这种情况下用param添加回调?
<table id='acc001'>...</table>
和我创建一个弹出菜单中点击该tr元素
var tr = $('<tr>').appendTo('#acc001');
popupMenu.draw_menu(tr);
var popupMenu = {
menu : [
{'string':'add data','type':'input','callback':function(tr){console.log(tr);}},
{'string':'edit data','type':'input','callback':function(tr){console.log(tr);}}
],
draw_menu : function(tr){
for(i in this.menu)
{
var div = $('<div>',{'text':this.menu[i].string}).appendTo('#infoDiv');
$(div).bind('click',this.menu[i].callback); // i cannot send param for this callback
}
}
}
问题创建后,在菜单上后能得到TR数据,但我不能让TR点击它们后的内容。 所有console.log不能显示..
- 所以如何添加和发送此回调参数?
- 任何其他方式正确执行此代码?
注意'这个'在回调中是点击'div'。您应该使用闭包保存上下文。 –
是的,刚刚第二次发现自己:) – lanzz
@misterjack:这是什么意思? – kreamik