我知道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>
答案 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的标签。试试吧。