jQuery“取代”AJAX吗?

时间:2010-12-17 21:24:07

标签: ajax jquery

我是新手,我使用基本的-AJAX技术 - 就像一年前一样。

一个月前,我意识到jQuery存在,我也是以基本的方式使用它。

我想知道的是jQuery是否可以像AJAX那样做和/或“替换”它。

取自w3schools的示例:可以使用jQuery创建吗?

function loadXMLDoc()
{
if (window.XMLHttpRequest)
  {// code for IE7+, Firefox, Chrome, Opera, Safari
  xmlhttp=new XMLHttpRequest();
  }
else
  {// code for IE6, IE5
  xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
  }
xmlhttp.onreadystatechange=function()
  {
  if (xmlhttp.readyState==4 && xmlhttp.status==200)
    {
    document.getElementById("myDiv").innerHTML=xmlhttp.responseText;
    }
  }
xmlhttp.open("GET","ajax_info.txt",true);
xmlhttp.send();
}

8 个答案:

答案 0 :(得分:14)

没有。 AJAX是一种设计模式,用于将动态行为或数据引入网页,而无需借助页面重新加载。

jQuery是一个Javascript框架。它可以做的一件事是以AJAX模式动态加载数据。

一个不会取代另一个。

你可以不用jQuery做AJAX,反之亦然;或者你可以一起做。

答案 1 :(得分:5)

jQuery是一个JavaScript框架,它使JS代码变得更加eaiser和跨浏览器。您提供的代码可以在jQuery中进行,如下所示:

$.get('ajax_info.txt', function(data){
  $('#myDiv').html(data);
});

甚至更容易:

$('#myDiv').load('ajax_info.txt');

jQuery API

答案 2 :(得分:2)

如果你正在使用jQuery,那么有一个内置的.ajax()函数可以替换所有代码。它还处理跨浏览器问题。我最近重写了整个网站的ajax代码看起来更像这样。

示例:

$.ajax({
    url: 'fetchInfo.php',
    success: function(data) {
        $('.result').html(data);
        alert('Load was performed.');
    }
});

答案 3 :(得分:0)

是。 jQuery的ajax方法只是一个包装器。但是,它会为您处理特定于浏览器的错误和问题,并为配置/执行请求提供更友好的界面。

答案 4 :(得分:0)

肯定:

$.get('ajax_info.txt', function(data) {
 $('#myDiv').append(data);
});

答案 5 :(得分:0)

查看第4个链接周围的jQuery API

应该说jQuery.ajax()

答案 6 :(得分:0)

是的,内置于​​jquery中。见http://api.jquery.com/category/ajax/

答案 7 :(得分:0)

是的,jQuery功能强大,甚至还具有.ajaxPrefilter().ajaxStart().ajaxSend().ajaxError().ajaxStop(),...

您可以使用jQuery创建上述代码,首先为jQuery库声明脚本,例如:

<script type="text/javascript" src="jquery-address"></script>

示例:

$(document).ready(function(){
    $.ajax({
        url:"ajax_info.txt",
        type:"POST",
        data:"key1="+value1+"&key2="+value2,
        success:function(msg){$("#myDiv").text(msg);}  
    });  
});