在ajax中做不同的方法来做一个共同的任务

时间:2015-02-12 09:07:22

标签: jquery ajax

在浏览ajax时,我发现遵循许多不同的技术来完成一项共同任务,但我无法区分这些技术,例如ex:-1

<html>
<head>
<script>
   function CheckAjax() {
     var xmlhttp;
       if(window.XMLHttpRequest) {     
         xmlhttp = new XMLHttpRequest();
       } else {
         // For IE6 IE5
         xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");  
       }
    xmlhttp.onreadystatechange = function() {
       if(xmlhttp.readyState==4 && xmlhttp.status==200) {
        document.getElementById("check").innerHTML = xmlhttp.responseText;
       }
    }
    xmlhttp.open("GET","ajax_info.txt",true);
    xmlhttp.send();
  } 
</script>
</head>

<body>
<div id="check">
<h2>Let Ajax Change</h2>
</div>
<button type="button" onclick="CheckAjax()">Change Content</button>
</body>
</html>
//this script first checks Object then opens a text file and changes it when button is clicked and show it in a div

同样的事情由另一个脚本完成,如: -

<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
<script>
$(document).ready(function(){
 $("button").click(function(){
    $("#div1").load("ajax_info.txt", function(responseTxt, statusTxt, xhr){
        if(statusTxt == "success")
            alert("External content loaded successfully!");
        if(statusTxt == "error")
            alert("Error: " + xhr.status + ": " + xhr.statusText);    //Error 404 Not Found
    });
  });
});
</script>
</head>
<body>
<div id="div1"><h2>Let jQuery AJAX Change This Text</h2></div>
<button>Get External Content</button>
</body>

如果我没有错,我们可以使用$.ajax$.post$.get使用不同的参数和方法来实现同样的目标。现在,遵循和坚持相同模式的最佳方便方式是什么

1 个答案:

答案 0 :(得分:1)

Jquery的

$.ajax是jquery函数,$.get$.post是发送ajax GET POST 请求的简写。那些是一样的。您可以使用设置为$.ajax的任何类型的请求GETPOST配置TYPE

还有另一种简写:

$.getJSON:与$ajax相同,但datatype: JSON表示其响应类型为JSON

$.load:它也是一种返回HTMLTEXT类型响应的简写

的Javascript

如果你想在不使用jquery的情况下发送ajax请求,那么你必须使用XMLHttpRequest对象。

更多详情:Difference between $.ajax() and $.get() and $.load()