首页 > 代码库 > Deferred解决JS同步问题

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="http://www.mamicode.com/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="http://www.mamicode.com/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

Deferred解决JS同步问题