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