当前位置:Gxlcms > PHP教程 > Ajax的小封装get,post请求

Ajax的小封装get,post请求

时间:2021-07-01 10:21:17 帮助过:19人阅读

Ajax的小封装对ajax的get请求的小封装
  1. function Ajax() {
  2. var xhr =null;
  3. if(window.XMLHttpRequest) {
  4. xhr = new XMLHttpRequest();
  5. } else {
  6. xhr = new ActiveXObject("Microsoft.XMLHttp");
  7. }
  8. this.get=function(url,success,fail){ //get请求
  9. xhr.open("GET", "1.jsp",true);
  10. xhr.onreadystatechange=function(){
  11. if(xhr.readyState==4) {
  12. alert(xhr.status);
  13. if(xhr.status==200) {
  14. var txt = xhr.responseText;
  15. txt = eval("("+txt+")");
  16. var ch = txt.charAt(0);
  17. if(ch=="<") { //xml类型
  18. var xml = xhr.responseXML;
  19. success(eval("("+xml+")"));
  20. } else if(ch=="["||ch=="{") {//json类型
  21. txt = eval("("+txt+")");
  22. success(txt);
  23. } else {//不知道直接返回
  24. success(txt);
  25. }
  26. } else {
  27. if(fail) {
  28. fail(xhr.status);
  29. }
  30. }
  31. }
  32. };
  33. xhr.send(null);
  34. };
  35. this.post = function (url,param,success,fail) {//post请求
  36. xhr.open("POST", "1.jsp",true);
  37. xhr.onreadystatechange=function(){
  38. if(xhr.readyState==4) {
  39. alert(xhr.status);
  40. if(xhr.status==200) {
  41. var txt = xhr.responseText;
  42. var ch = txt.charAt(0);
  43. if(ch=="<") { //xml类型
  44. var xml = xhr.responseXML;
  45. success(eval("("+xml+")"));
  46. } else if(ch=="["||ch=="{") {//json类型
  47. txt = eval("("+txt+")");
  48. success(txt);
  49. } else {//不知道直接返回
  50. success(txt);
  51. }
  52. } else {
  53. if(fail) {
  54. fail(xhr.status);
  55. }
  56. }
  57. }
  58. };
  59. xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
  60. xhr.send(param);
  61. };
  62. }

人气教程排行