Deferred解决JS同步问题

时间:2023-03-08 22:07:35
Deferred解决JS同步问题

测试脚本:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
<script src="js/jquery-1.7.2.min.js"></script>
<script type="text/javascript">
function getData3(){
var defer = $.Deferred();
$.ajax({
url: 'v.aspx',
//async : false,
cache: false,
success: function (data) {
defer.resolve(data)
}
});
return defer.promise();
} $(document).ready(function () {
$('.loadingicon').hide();
$('#statm').click(function () {
$('.loadingicon').show();
$.when(getData3()).done(function(data){
$('.loadingicon').hide();
alert(data);
});
}); var iii = 0;
setInterval(function () {
iii += 1;
$("#sp").text(iii); }, 1000); }); </script>
</head>
<body>
<form id="form1" runat="server">
<input type="button" value="button" id="statm" />
<div class=".loadingicon">正在获取</div>
<span id="sp"></span>
</form>
</body>
</html>

  

参考页面:

http://www.cnblogs.com/aaronjs/p/3348569.html

http://www.111cn.net/wy/jquery/61811.htm

http://www.oschina.net/question/157182_49050