JQuery «заменяет» AJAX? - PullRequest
       1

JQuery «заменяет» AJAX?

2 голосов
/ 18 декабря 2010

Я новичок, я работал с базовыми методами 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 ]

14 голосов
/ 18 декабря 2010

Нет. AJAX - это шаблон проектирования, используемый для представления динамического поведения или данных на веб-страницах без необходимости перезагрузки страницы

jQuery - это среда Javascript. Одна из вещей, которую он может сделать, - это динамическая загрузка данных в шаблоне AJAX.

Один не заменяет другой.

вы можете делать AJAX без jQuery и наоборот; или вы можете сделать их вместе.

5 голосов
/ 18 декабря 2010

jQuery - это платформа для JavaScript, которая делает код JS eaiser и кросс-браузерным.Предоставленный вами код может быть выполнен в jQuery следующим образом:

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

Или даже проще:

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

jQuery API

2 голосов
/ 18 декабря 2010

Если вы используете jQuery, есть встроенная функция .ajax () , которая заменяет ВСЕ этот код.Он также решает проблемы с разными браузерами.В последнее время я переписываю код ajax всего сайта, чтобы он выглядел так:

Пример:

$.ajax({
    url: 'fetchInfo.php',
    success: function(data) {
        $('.result').html(data);
        alert('Load was performed.');
    }
});
0 голосов
/ 15 декабря 2012

Да, 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);}  
    });  
});
0 голосов
/ 18 декабря 2010

да, это встроено в jquery.см http://api.jquery.com/category/ajax/

0 голосов
/ 18 декабря 2010

Взгляните на jQuery API вокруг 4-й ссылки.

Следует сказать jQuery.ajax()

0 голосов
/ 18 декабря 2010

Определенно:

$.get('ajax_info.txt', function(data) {
 $('#myDiv').append(data);
});
0 голосов
/ 18 декабря 2010

Да.ajax-метод jQuery - это просто оболочка.Однако он заботится об ошибках и проблемах, связанных с браузером, и предоставляет более удобный интерфейс для настройки / выполнения запросов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...