我有一个 HTML 菜单选项,我click
在 jQuery 中绑定了一个处理程序:
var xyz = {
getMainContainerSelector: function () {
return '.container#main';
},
bindMenuOptions: function () {
$('#menu_outcome_list').bind('click', function() {
// inject template
$(this.getMainContainerSelector()).html(ich.outcomeListTemplate({}));
// load datatable
$('#outcomes').dataTable({
"bServerSide": true,
'sPaginationType': 'bootstrap',
"sAjaxSource": '../php/client/json.php?type=outcomes'
});
});
},
...
}
我对以下行有疑问:
$(this.getMainContainerSelector()).html(ich.outcomeListTemplate({}));
我想这是一个上下文问题。我的意思是,在 bind 函数内部,this
不再xyz
是 ('#menu_outcome_list') HTML 元素。我想做的只是xyz
从绑定函数内部调用 ' 方法。