0
我试图将事件绑定到某个for循环内for循环内的实体。JQuery事件绑定获取覆盖
基本上它是for循环内的for循环,并且方法绑定。但我的问题是,当我首先与内部循环实现的方法进行交互时,然后执行外部循环实现的方法,那么只有外部循环实现的方法会工作,内部级别实现的方法不再工作。
如果我开始与外部循环实现的方法进行交互,其中只有该方法可行并且内部循环实现的方法完全不起作用,则会发生同样的情况。这是我到目前为止所尝试的:
var tree = document.getElementById('tree');
for (var i in result) {
if (result[i].children) {
// fill outer layer entities with children
tree.innerHTML +=
'<div id="layer_one_title_' + [i] + '" class="title">' +
'<i class="dropdown icon"></i>' +
'<i class="folder icon"></i>' + result[i].text +
'<i class="plus icon lev_one_add" ></i>' +
'</div>' +
'<div id="layer_one_content_' + [i] + '" class="content active"></div>';
$('#layer_one_title_' + [i]).on('click', '.lev_one_add', function(event) {
newFirstNode(result[i], event);
});
let layer_one_content = document.getElementById('layer_one_content_' + [i]);
for (var j in result[i].children) {
if (result[i].children[j].children) {
// fill inner layer entities with children
layer_one_content.innerHTML +=
'<div id="layer_one_' + [i] + '_' + [j] + '" class="accordion layer_one">' +
'<div id="layer_two_title_' + [i] + '_' + [j] + '" class="title">' +
'<i class="dropdown icon"></i>' +
'<i class="folder icon"></i>' + result[i].children[j].text +
'<i class="plus icon lev_two_add"></i>' +
'</div>' +
'<div id="layer_two_content_' + [i] + '_' + [j] + '" class="content active"></div>' +
'</div>';
$('#layer_two_title_' + [i] + '_' + [j]).on('click', '.lev_two_add', function(event) {
newFirstNode(result[i], event);
});
任何想法我在做什么错在这里?
任何方式,你可以提供这样的代码与codepen或jsfiddle的东西的例子? – webbm
@webbm现在对不起,我不能提供一个,我看看我能做什么 – Ichorville