次のコードの実行を続行する前に Jquery が ajax の実行を待機する効果は、実際には、jquery ajax 関数の async パラメーターを false に設定することです。 true:
$(document).ready(function(){ loadphpernote(); window.open('http://www.phpernote.com'); }); function loadphpernote(){ var url='http://www.phpernote.com/ajax.php'; var data='action=list'; jQuery.ajax({ type:'post', url:url, data:para, async:false,//false代表只有在等待ajax执行完毕后才执行window.open('http://www.phpernote.com')语句 success:function (msg){ $('#articleList').html(msg); } }); }
jqueryの読み込み待機効果を紹介します
var dates = this.options.form.getWidgetByName("dates").getValue(); $.ajax({ url: "http://127.0.0.1:9009/Brilliantzz/service/snproduct.do", data:dates, beforeSend:function() { var h = document.body.clientHeight; $("<div class=\"datagrid-mask\"></div>").css({display:"block",width:"100%",height:h}).appendTo("body"); $("<div class=\"datagrid-mask-msg\"></div>").html("正在上传生产数据,请稍候。。。").appendTo("body").css({display:"block", left:($(document.body).outerWidth(true) - 190) / 2, top:(h - 45) / 2}); }, complete:function(data) { $('.datagrid-mask-msg').remove(); $('.datagrid-mask').remove(); }, success: function(data) { alert("生产数据:"+data); }, error: function(data) { alert("上传生产数据异常!"); } });