我一直在尝试这个过去很多个小时,我知道这是可能的,我正在做的是,我有一个需要用数组中的数据更新的div。以下是我的代码:
var data = $.trim('test1, test2, test3');
var data_array = data.split(',');
$.each(data_array, function(key,value) {
$("#waitingcategoryinsert span").replaceWith(value);
});
虽然这是我需要放置内容的HTML div
<div id ="waitingcategoryinsert">
<img src ="../includes/templates/snowwhite/images/loading.gif"/>
<span></span>
</div>
此函数仅使用数组的第一个值更新div,即&#34; test1&#34;我希望一个接一个地延迟显示所有3个值。我也尝试过使用settimeout()函数,但这也没有用。请帮我解决我想去哪里?,提前谢谢
答案 0 :(得分:0)
要为span添加值,请尝试以下方法:
$("#waitingcategoryinsert span").html(value);
删除span并继续追加数组元素:
if($("#waitingcategoryinsert span").length)
$("#waitingcategoryinsert span").remove();
$("#waitingcategoryinsert").append(value) ;
更新:显示有延迟的元素:
var i=1;
$.each(data_array, function(key,value) {
setTimeout(function(){
$("#waitingcategoryinsert span").html(value);
},500 + ( i * 500 ));
i=i+1;
});
<强> Working Demo 强>
答案 1 :(得分:0)
你错过了。
$("#waitingcategoryinsert span").prepend(value)
答案 2 :(得分:0)
我认为您正在寻找 .append() 而不是.replaceWith()
:
$("#waitingcategoryinsert span").append(value);
<强> Fiddle Demo 强>
答案 3 :(得分:0)
试试这个:
$.each(data_array, function(key, value) {
$("#waitingcategoryinsert span").append(value);
});
<强> jsFiddle 强>
答案 4 :(得分:0)
我认为您应该使用Jquery的Append属性来显示所有结果。因为append可以保存其中的所有值。
var data = $.trim('test1, test2, test3');
var data_array = data.split(',');
$.each(data_array, function(key,value) {
$("#waitingcategoryinsert span").append(value);
});