我正在动态设置元素(例如按钮)的ID。下面给出一个示例(该代码可能存在语法错误,我只是想解释我的问题)。
function myFunc(){
var counter = 0;
return function(){
counter += 1;
var rowContent = '<div>';
rowContent += '<button type="button" class="btn btn-default" id="button"' + counter + '></button>';
rowContent += '</div>';
$('#someElement').append(rowContent);
};
}
现在,我想将click事件与按钮相关联。在将事件与按钮关联时(例如$('#myID')),我需要提及ID元素。但是由于ID是动态设置的,因此我不确定ID可能是什么。有人可以告诉我与事件关联时如何引用该元素的动态设置ID吗?提前致谢!!
最佳答案
Delegate the event到父元素rowContent
。
$('#someElement').append(rowContent);
$('button', rowContent).on('click', function(e) {
// button element in the 'rowContent' context
}
将它委派给
#someElement
也可以,除非您要在其中放置多个带有不同单击处理程序的按钮。