ajax的一般寫法

來源:互聯網
上載者:User

 記錄一段AJAX的基本寫法,代碼加註釋,很多人認為它神秘,其實看了就明白了

這裡用.NET的ASPX做返回處理的服務端

JS代碼,調用方法

  <script type ="text/javascript">
   
   var request = false;
   try ...{
     request = new XMLHttpRequest();//非微軟瀏覽器
   } catch (trymicrosoft) ...{
     try ...{
       request = new ActiveXObject("Msxml2.XMLHTTP");//微軟IE
     } catch (othermicrosoft) ...{
       try ...{
         request = new ActiveXObject("Microsoft.XMLHTTP");//微軟其他
       } catch (failed) ...{
         request = false;
       }  
     }
   }
   if (!request)//老式瀏覽器不支援XMLHttpRequest對象的
     alert("Error initializing XMLHttpRequest!");
     
   function getCustomerInfo() ...{
     var phone = document.getElementById("Text1").value;//擷取表單上Text摸值
     
     var url = "http://localhost:14379/WebHtmlPartDynamic/Default2.aspx?phone="+escape(phone);//請求的網頁
     request.open("GET", url, true);//建立請求:GET方式,地址,TRUE為非同步呼叫
     request.onreadystatechange = updatePage;//伺服器處理完畢調用哪個方法
     request.send(null);//發送請求(一般不發送安全資訊和XML為NULL)
   }
   function updatePage() ...{
    if(request.readyState ==4)//判斷HTTP請求的就緒狀態,這裡4是最後一狀態
    if (request.status == 200)//請求正常的狀態代碼為200(返回錯誤串連的404類似的一種表示)
    ...{
        var dh = request.responseText;    
        alert(dh);
    }
     else if (request.status == 404)//以下為錯誤檢查
         alert("Request URL does not exist")
       else
         alert("Error: status code is " + request.status);
   }
</script>

 

HTML代碼  如何調用

 

<body>
    <form id="form1" runat="server">
    <div>
        <input id="Text1" type="text" />
        <input id="Submit1" type="submit" value="submit" onclick = "getCustomerInfo()" /></div>
    </form>
</body>

 

ASPX裡寫的,做為響應AJAX請求的處理部分

 

  protected void Page_Load(object sender, EventArgs e)
    ...{
        if (!IsPostBack)
        ...{
            string str = Request.QueryString["phone"];
            Response.Write(str);
            Response.Flush();
            Response.End();
        }
    }
相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.