读书人

如何使jquery的each循环每执行一次停

发布时间: 2013-06-19 10:26:41 作者: rapoo

怎么使jquery的each循环每执行一次,停一段时间再执行下一次循环呢
怎么使jquery的each循环每执行一次,停一段时间再执行下一次循环呢
,用了setTimeout,没效果。。如下是源代码
$(function(){
$("#btn").click(function(){
$.ajax({
type:"POST",
url:"Common.asmx/SendMsgs",
data:"{}",
contentType:"application/json",
dataType:"json",
success:function(data){
var jsonData=data.d;
var jsonTable=jQuery.parseJSON(jsonData);
$.each(jsonTable.jsonName,function(i,item){
var oldHtml="<span>我: "+item.id+"</span><br/>"+"<span>"+item.age+"</span>";
$("<p>").html(oldHtml).appendTo($("div")).css({color:"red"});
setTimeout("function(){return false;}",5000);
});

},
error:function(){
alert("error");
}

});
});
});

===========WEB服务==============
[WebMethod]
public string SendMsgs()
{
return "{\"jsonName\":[{\"id\":\"001\",\"age\":\"10\"},{\"id\":\"002\",\"age\":\"20\"},{\"id\":\"003\",\"age\":\"30\"}]}";


}
[解决办法]
setTimeout("$(\"<p>\").html(\"<span>我: " + item.id + "</span><br/>" + "<span>" + item.age + "</span>\").appendTo($(\"div\")).css({ color: \"red\" })", i * 1000);


这样应该没有问题吧
[解决办法]

 $.each(jsonTable.jsonName, function (i, item) {
var oldHtml = "<span>我: " + item.id + "</span><br/>" + "<span>" + item.age + "</span>";
setTimeout(function () {
$("<p>").html(oldHtml).appendTo($("div")).css({ color: "red" });
}, i*5000);
});

读书人网 >asp.net

热点推荐