在ajax中添加简单的GET或POST?

时间:2011-03-20 06:35:55

标签: javascript ajax

我知道ajax中的GET和POST方法是什么,但我想知道如何将它们实现为一个简单的代码,以便我能更好地理解它,这里有一个简单的代码我发现:

<html>
<head>
<title>XMLHttpRequest in Mozilla</title>
<script type="text/javascript"> 
function Start()
{
try
{
xmlhttp = new XMLHttpRequest();
document.getElementById("Content").innerHTML="<h1>Using XMLHttpRequest Object</h1>";
}
catch (e)
{
document.getElementById("Content").innerHTML="<h1>XMLHttp cannot be created!</h1>";
}  
}
</script>
</head>
<body>
<a href="javascript:Start()">Start</a>
<div id="Content"></div>
</body>
</html>

4 个答案:

答案 0 :(得分:2)

您在那里实现的唯一目的是确定您的浏览器是否支持XMLHttpRequest(在资源管理器中没有,在其他任何情况下都是)。你实际上并没在调用服务器。

这是开始学习ajax和javascript的一个很好的链接:

http://www.hunlock.com/blogs/AJAX_for_n00bs

请务必检查所有网站,而不仅仅是该帖子。

function ajaxRequest() {
   var AJAX = null;                                 // Initialize the AJAX variable.
   if (window.XMLHttpRequest) {                     // Does this browser have an XMLHttpRequest object?
      AJAX=new XMLHttpRequest();                    // Yes -- initialize it.
   } else {                                         // No, try to initialize it IE style
      AJAX=new ActiveXObject("Microsoft.XMLHTTP");  //  Wheee, ActiveX, how do we format c: again?
   }                                                // End setup Ajax.
   if (AJAX==null) {                                // If we couldn't initialize Ajax...
      alert("Your browser doesn't support AJAX.");  // Sorry msg.                                               
      return false                                  // Return false, couldn't set up ajax
   }
   var url='http://somedomain.com/getdata.php?doc=sometext.txt'; // This is the URL we will call.
   AJAX.open("GET", url, true);                                  // Open the url this object was set-up with.
   AJAX.send(null);                                              // Send the request.

   AJAX.onreadystatechange = function() {                      // When the browser has the request info..
       if (AJAX.readyState==4 || AJAX.readyState=="complete") { //  see if the complete flag is set.
          callback(AJAX.responseText, AJAX.status);             // Pass the response to our processing function
       }                          

                          // End Ajax readystate check.
   }                                                           // End Event Handler.
}

答案 1 :(得分:2)

入门的好地方:https://developer.mozilla.org/en/AJAX/

您的代码片段仅适用于非IE浏览器。不要让MS退出聚会!使用此代码

var httpRequest;
if (window.XMLHttpRequest) { // Mozilla, Safari, ...
    httpRequest = new XMLHttpRequest();
} else if (window.ActiveXObject) { // IE
    httpRequest = new ActiveXObject("Microsoft.XMLHTTP");
}

现在您可以使用此对象执行一两个请求。

这里有一个非常全面的教程:https://developer.mozilla.org/en/AJAX/Getting_Started

该教程将比我更好地解释它。

答案 2 :(得分:0)

我想建议一些能让你的生活变得更轻松的事情。使用jQuery!它使ajax调用(和任何javascript)更容易。您可以使用非常少的代码执行复杂的操作。

http://api.jquery.com/jQuery.ajax/ 这是为了你的参考。

答案 3 :(得分:0)

如果您真的喜欢Javascript并希望以简单的方式学习AJAX,我建议您http://w3schools.com/ajax/ajax_intro.asp这是非常基本且易于理解的。你甚至可以尝试到目前为止所学到的知识。

此外,就Ajax而言,Jquery非常简单。它基本上让你免于检查浏览器兼容性和其他东西的所有混乱。我建议你看一下Elad在上面提到的内容。 “少写更多”是Jquery的标签。试试吧。