ajax的頁面提示處理

來源:互聯網
上載者:User
ajax|頁面

ajax的頁面提示處理
                                      
 

現象:由於現有系統必須在b/s下實現即時資料顯示及tip顯示,當滑鼠移到某一<div>時,系統採用ajax的方式向後台取資料。在取資料的過程中常常發現系統進程停頓的情況,主要表現為:所有系統進程停頓,滑鼠不起作用。

原因:

原有系統採用了同步的方式進行提交,代碼如下:

var xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
xmlhttp.Open("post", "testto.jsp", false);//同步
xmlhttp.Send(doc);
return xmlhttp.responseText;

把上面的請求改為非同步,即把xmlhttp.Open("post", "testto.jsp", true);時出現javascript指令碼錯誤。

解決辦法:

var xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
    xmlhttp.Open("post", "maptipto.jsp", true);
    xmlhttp.Send(doc);
    xmlhttp.onreadystatechange=function(){ //回呼函數
       if(xmlhttp.readyState==4&&){
           if(xmlhttp.status==200){
                var text = xmlhttp.responseText;
                //todo 處理函數
                dosometing();
           } else {
                alert("您所請求有異常。");
           }
                       
       } else{
           //提示函數
           document.getElementById("messageDiv").innerHTML="讀取資料中,請稍候……";
       }
    }

說明:採用回呼函數的方式處理請求。處理函數應該放在回呼函數之內而不應該放在回呼函數之外


 



相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.