Cannot read property 'appendChild' of null
При динамической генерации контента. Через JSON генерирую html, но столкнулся с такой проблемой. В цикле создаю ряд объектов, в которые потом после их создания хочу положить новые, которые так же генерируются. Как решить проблему?
Вот код: http://jsfiddle.net/1nadzv87/12/
Слышал про $().on('event', , ), но не знаю как применить, так, что контент генерировался при загрузке страницы, а не при выполнении какого-то действия.
Знаю, 2 одинаковых запроса, это так для примера, в конечном итоге url'ы разные.
$.getJSON( "http://my-json-server.typicode.com/typicode/demo/posts", function(data){
var i = -1;
var s = JSON.stringify(data).match(/"id":/g).length - 1;
var box = document.getElementById('box');
var num = new Array();
var m = 0;
while (i < s){
i++;
num = m;
m++;
var obj = document.createElement("div");
obj.id = data[i].id;
box.appendChild(obj);
$.getJSON( "http://my-json-server.typicode.com/typicode/demo/posts", function(data){
var i = -1;
var s = JSON.stringify(data).match(/"id":/g).length - 1;
var box = document.getElementById(num[i]);
while (i < s){
i++;
var obj = document.createElement("div");
obj.id = data[i].id;
obj.innerText = data[i].title;
box.appendChild(obj);
}
});
}
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="box">
</div>
numинициализируется массивом, а хранит числоm? – Grundy Aug 01 '18 at 15:08num = m;,var i = -1;num[i]- это что значит? – Aug 01 '18 at 15:09undefinedи поиск элемента сid=undefined– Grundy Aug 01 '18 at 15:09num.push(m);– Aug 01 '18 at 15:11async/await- пример можно посмотреть в вопросе Как вернуть значение из события или из функции обратного вызова? Или хотя бы дождаться их окончания – Grundy Aug 01 '18 at 16:48