一個比較方便通用的自訂Ajax函數

來源:互聯網
上載者:User

1.function Ajax()
2.{
3. var len=arguments.length;
4. var type,url,postdata,fn;
5. if(len<2)
6. {
7. alert('沒有2個一下參數的 重載,至少必須指定請求類型(type)和url地址!');
8. return;
9. }
10. type=arguments[0];
11. url=arguments[1];
12. if(len>2)
13. {
14. var args=arguments[2];
15. if(typeof(args)=="string")
16. {
17. postdata=args;
18. }
19. }
20. var xhr = window.ActiveXObject ? new ActiveXObject("Microsoft.XMLHTTP") : new XMLHttpRequest();
21. xhr.open(type,url,true);
22. xhr.setRequestHeader ("Content-Type","application/x-www-form-urlencoded");
23. fn = arguments[len-1];
24. xhr.onreadystatechange = function (){
25. if (xhr.readyState==4)
26. {
27. if(xhr.status==200)
28. {
29. if(typeof(fn)=="function")
30. fn (xhr.responseText);
31. }
32. else
33. {
34. alert("你所請求的頁面有異常");
35. }
36. }
37. };
38. xhr.send(postdata);
39. }
40.
41. function Test()
42. {
43. Ajax("get","/WebRoot/servlet/TestAjax");
44. Ajax ("get","/WebRoot/servlet/TestAjax",function (date){
45. alert ("Get Date:\n"+date);
46. });
47. Ajax ("post","/WebRoot/servlet/TestAjax");
48. Ajax ("post","/WebRoot/servlet/TestAjax",function (date){
49. alert("Post Date:\n"+date);
50. });
51. Ajax ("post","/WebRoot/servlet/TestAjax","username=jonllen&pwd=12345 6",function (date){
52. alert("Post Date:\n"+date);
53. });
54. }

相關文章

聯繫我們

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