Что я должен использовать? AJAX или JQuery? - PullRequest
1 голос
/ 04 марта 2011

У меня есть 3 списка ASP. Список значений, отображаемых во втором списке, зависит от выбранного элемента в первом, а значения, отображаемые в третьем поле, отображаются в зависимости от выбора во втором поле. Все эти значения должны быть получены из базы данных, и я хотел бы знать, лучше ли использовать AJAX или jQuery.

Я прочитал различия между ними, но все еще в замешательстве. Пожалуйста, помогите мне с этим конкретным примером.

Ответы [ 10 ]

9 голосов
/ 04 марта 2011

Ajax означает «Отправка данных и / или получение данных с сервера, не покидая страницу с использованием JavaScript»

jQuery - это библиотека JavaScript.

Вы не можете выбрать между ими, поскольку это все равно, что выбирать между «Путешествие» и «Боинг» (Boeing производит продукты, которые помогают вам путешествовать. Другие компании делают тоже. Вы можете путешествовать без использования продуктов сделанный любой компанией. Боинг делает вещи, не связанные с путешествием).

Если у вас много данных (т. Е. Слишком много, чтобы загрузить все на страницу впереди), то вы захотите использовать Ajax для их извлечения. Если у вас нет такого большого количества данных, вы можете просто встроить их в свой скрипт и не беспокоиться о том, чтобы делать HTTP-запросы, чтобы получить их с помощью методов Ajax (это будет стоить во время загрузки, но сделает скрипт намного проще).

Если вы хотите изменить данные в элементе выбора на основе данных, выбранных в предыдущем, тогда библиотека JavaScript может сэкономить некоторые хлопоты, но может не стоить дополнительного веса страницы (хотя, если вы делаете много вещей с JS тогда усилия будут складываться до тех пор, пока не стоило бы использовать библиотеку с самого начала).

Если вы хотите использовать Ajax, то в браузере достаточно различий, чтобы библиотека JS, вероятно, стоила бы такого веса. Что касается библиотек, то jQuery разумен и популярен.

4 голосов
/ 04 марта 2011

перья или свинец?

Это не или-или! AJAX - это техника общения с веб-сервером через Javascript. jQuery - это инфраструктура Javascript. Это яблоки и апельсины. Вы можете выполнять запросы AJAX в простом Javascript или использовать оболочки JQuery для выполнения запросов AJAX. В конце концов, они одинаковы, jQuery просто облегчает, потому что он абстрагирует вещи. JQuery не является альтернативой AJAX или Javascript, это просто набор функций, облегчающих выполнение повседневных задач.

Я бы порекомендовал вам начать с простых запросов AJAX Javascript, чтобы узнать, как все работает, прежде чем использовать библиотеку для абстрагирования деталей.

4 голосов
/ 04 марта 2011

Это разные (хотя и связанные) понятия. jQuery - это богатая библиотека JavaScript, которая обеспечивает, помимо прочего, поддержку AJAX.

AJAX сам по себе является в основном общим термином для различных методов JavaScript, используемых для динамического подключения к веб-серверу без необходимости загрузки нескольких страниц. В более узком смысле это относится к использованию объекта XmlHttpRequest для динамического взаимодействия с веб-сервером через JavaScript.

1 голос
/ 04 марта 2011

jQuery - это библиотека JavaScript, предназначенная для устранения различий между пользовательскими агентами.

Ajax (асинхронный JavaScript и XML) - это метод выполнения асинхронных запросов к хосту. jQuery (среди многих других библиотек & hellip; и ванильный JavaScript) поддерживает Ajax (и упрощает его, предоставляя стандартизированный интерфейс для пользовательских агентов).


Итак, реальный вопрос: стоит ли использовать JQuery для выполнения ваших запросов Ajax?

И ответ таков: да, если вы уже используете jQuery - если нет, вы можете включить jQuery или другую JS-библиотеку, поддерживающую Ajax, или реализовать функциональность Ajax в vanilla JS.

0 голосов
/ 04 марта 2011

вы используете ASP или ASP.NET?Если это ASP.NET, то просто добавьте код в метод onselectionaled списка, чтобы изменить значения в других полях.ASP.NET позаботится обо всех вызовах AJAX.

0 голосов
/ 04 марта 2011

если появятся данные слишком много!тогда вы можете использовать Ajax, из-за скорости

, если не слишком много, вы можете использовать javascript (jQuery), чтобы прочитать их один раз!

0 голосов
/ 04 марта 2011

Ajax - это метод , который описывает асинхронный запрос, который (как правило) вызывается некоторым кодом Javascript.jQuery - это библиотека, которая реализует эту технику в некоторых изящных обертках.Я предлагаю вам скачать jQuery , это довольно просто, и в интернете много кода и учебников.

0 голосов
/ 04 марта 2011

Я бы лично использовал jquery с getJson для получения данных. Может быть, это вариант для вас?

$.getJSON("getMenu", "parentID=" + parent, function (data) {
    $.each(data, function (index, item) {
        // add code to new 2nd listbox
     }
  }

тогда вам придется объявить бэкэнд getMenu

это также может быть сделано с помощью ajax

0 голосов
/ 04 марта 2011

не путаете ли вы AJAX с техникой и библиотекой jQuery ... я использую jQuery для выполнения AJAX

0 голосов
/ 04 марта 2011

Что именно вы имеете в виду, когда говорите «AJAX»? Насколько я понимаю, независимо от того, какую библиотеку вы используете (jQuery или что-то еще), вы все равно будете использовать асинхронные запросы к серверу.

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