1
모두, UI 콘텐츠의 부분 업데이트가 필요한 DashBoard에서 작업 중이며 비동기식 Jquery.ajax
으로 구현하려고했지만 비동기 요청이 완전히 작동하지 않는 것으로 나타났습니다. 모든 내용은 마지막 요청이 완료되었을 때만 업데이트되었습니다. 그래서 나는 작은 시험을 치고 그 결과를 알아 내려고 노력합니다.여러 비동기 요청
아래 코드는 제 코드입니다. 검토해주십시오.
asp.net 페이지에서 시험 결과는 그것은 단지 파이어 폭스에서 작동이다
protected void Page_Load(object sender, EventArgs e)
{
string sTime = Request.Params["WaitTime"];
if (!string.IsNullOrEmpty(sTime))
{
Thread.Sleep(int.Parse(sTime) * 1000);
Response.Write(sTime);
}
}
, 나는 파이어 폭스에서 의미 코드 숨김 코드 모든 요청은 독립적으로
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
<script src="Scripts/jquery-1.4.1.js" type="text/javascript"></script>
<script language="javascript" type="text/javascript">
$(function() {
$("#btnMultipleRequest").bind("click", function() {
$("#imgLoading").show();
$("#divResponse").empty();
loopRequest();
});
$("#imgLoading").hide();
});
function loopRequest() {
var arr = [1, 2, 3, 4, 5];
$.each(arr, function() {
var i = this;
$.ajax({
type: "Get",
async: false,
url: "server.aspx?waittime=" + i,
success: function (data) {
$("#divResponse").append("<br>" + data);
if (data == "5") {
$("#imgLoading").hide();
}
}
});
});
}
</script>
</head>
<body>
<form id="form1" runat="server">
<div>
<input id="btnMultipleRequest" value="BeginMultipleRequest" type="button" />
<img src="img/wait.gif" id="imgLoading" alt=""/>
<div id="divResponse">
</div>
</div>
</form>
</body>
</html>
페이지 업데이트는 모든 기다리지 않습니다 완료 될 요청의 응답. 하지만 IE와 Chrome에서는 작동하지 않습니다. 마지막 요청이 끝날 때까지 페이지가 업데이트되기 때문입니다. 내가 뭔가를 놓치면 나도 도와 줘.
브라우저. 이것은 나를 혼란스럽게 만든다. 왜 그런지 알아? 감사. –