【发布时间】:2016-12-29 16:13:23
【问题描述】:
我在 JSON 解析函数中创建元素。我想为其中一些添加一个类,以防它们包含特定的字符串。我尝试在解析函数的末尾添加一个元素,稍后会检查它是否已加载,但由于解析是异步过程,因此在加载时间长的情况下它是无用的。如何查看解析是否完成?
$(document).ready(function(){
$.getJSON(data, function(dat) {
$.each(dat, function (k, da) {
$('div').append('<p>'+ da.string +'</p>');
});
$('div').append('<p id="loaded">loaded</p>');
});
var loaded = setInterval(function() {
if ($('#loaded').length) {
$('p:contains("blahblah")').addClass('blah');
clearInterval(checkExist);
}
}, 100);
});
【问题讨论】:
-
创建元素的时候为什么不添加你的类?
-
嗯,还有一个外部函数添加的内容,所以创建的时候还不知道
-
您可以尝试使用
$.ajax获取数据。它有.done和.always。我在 Firefox 上对 jsfiddle 做了一些测试。always在done完成执行后调用。我无法在任何地方找到此文档,因此您可能需要测试并确认或查看库。链接到小提琴 -> jsfiddle.net/zjoy60mn/1
标签: javascript jquery json parsing dynamic