Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/75.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/docker/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在渲染后添加更多事件?_Javascript_Jquery_Backbone.js_Backbone Events - Fatal编程技术网

Javascript 在渲染后添加更多事件?

Javascript 在渲染后添加更多事件?,javascript,jquery,backbone.js,backbone-events,Javascript,Jquery,Backbone.js,Backbone Events,如何在将集合呈现到视图后添加更多事件 我有一个需要绑定事件的所有元素ID的列表 目前,我正在尝试使用jqueryonclick触发对视图中某个函数的回调 但问题是,我的视图中的函数调用在jQuery click事件中是未定义的 我查看了主干文档,它说要使用delegateEvents,但是文档中没有显示示例 //为呈现的员工列表添加更多动态事件 addMoreEvents:函数() { log(“列表视图-添加更多DOM事件”); 对于(var i=0;i

如何在将集合呈现到视图后添加更多事件

我有一个需要绑定事件的所有元素ID的列表

目前,我正在尝试使用jqueryonclick触发对视图中某个函数的回调

但问题是,我的视图中的函数调用在jQuery click事件中是未定义的

我查看了主干文档,它说要使用delegateEvents,但是文档中没有显示示例

//为呈现的员工列表添加更多动态事件
addMoreEvents:函数()
{
log(“列表视图-添加更多DOM事件”);
对于(var i=0;i时,它将为该员工获取所有任务
$(元素)。单击(this.getEmployeeInfo());//不工作!
}
}
必须有一种简单的方法来向呈现后存在的元素添加事件


谢谢

你走错了路。不要试图直接绑定到
#某些id
元素上的单击事件,您应该将类附加到要单击的对象上,然后使用视图的普通
事件
对象将单击处理程序绑定到该类的元素

例如,在视图的
el
中的HTML中会有类似的内容:

<li class="item" id="6">Where</li>
<li class="item" id="11">is</li>
<li class="item" id="23">pancakes</li>
<li class="item" id="42">house?</li>
然后,您的点击处理程序,
getEmployeeInfo
,可以查看
ev.currentTarget.id
,以获取点击项目的
id
属性:

getEmployeeInfo: function(ev) {
    var id = ev.currentTarget.id; // this will be the model's `id`
    // do whatever needs to be done...
}

谢谢,这很有效。请将此代码添加到问题中,以显示如何访问dom元素
ev.currentTarget.getAttribute(“attributename”)与问题有什么关系?
events: {
    'click .item': 'getEmployeeInfo'
}
getEmployeeInfo: function(ev) {
    var id = ev.currentTarget.id; // this will be the model's `id`
    // do whatever needs to be done...
}