Welcome

首页 / 脚本样式 / Ajax / 一个比较方便通用的自定义Ajax函数

一个比较方便通用的自定义Ajax函数2011-10-18 javaeye jonllen1.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: "+date);
46. });
47. Ajax ("post","/WebRoot/servlet/TestAjax");
48. Ajax ("post","/WebRoot/servlet/TestAjax",function (date){
49. alert("Post Date: "+date);
50. });
51. Ajax ("post","/WebRoot/servlet/TestAjax","username=jonllen&pwd=12345 6",function (date){
52. alert("Post Date: "+date);
53. });
54. }