/ / jquery load срещу ajax за изпращане на формуляр - javascript, php, jquery, ajax, форми

jquery load vs ajax за изпращане на формуляра - javascript, php, jquery, ajax, forms

Ако всичко, което искам да направя, е да изпратя формуляр на PHP процесор с POST данни и да получа резултата, има ли причина да използвам метода ajax над метода на зареждане на jQuery?

Използването на Ajax изисква куп код срещу нещо много просто на един ред в jQuery по следния начин:

$("#myDIV").load("myProcessor.php", {field1: target.value});

Хм, може би това работи добре само с едно поле? Съжалявам, просто се връщам в JS.

Отговори:

0 за отговор № 1

$(element).load(...) автоматично ще вмъкне отговора на сървъра в избрания елемент като html (jQuery документация за .load ()). Това може да доведе до това сървърът ви да изложи информация за заявката директно на потребителя, което вероятно не е това, което искате да направите.

$.ajax() също така позволява много фин контрол върху това, което се случва по време на заявката. Можете точно да прихващате изключения и да създавате обратно повикване, когато заявката завърши успешно. Това са всички причини да се използват $.ajax() над $(element).load(...). Ако обаче вашият само притеснението е изпращането на данните в заглавката на POST и работата с отговора, след което се използва $.post с функция за обратно повикване вероятно ще бъде най -простият подход. http://api.jquery.com/jQuery.post/


0 за отговор № 2
  • Най- .load методът е приблизително еквивалентно на $ .get (url, data, успех) (SRC).
  • Най- .get метод е стенография Ajax функция (SRC).

За обикновен ajax разговор, .load е подходящ. Използвайте .ajax ако искате да се справите със специални параметри.

PS: Ако не искате дебела рамка като jQuery, погледнете тук: http://microjs.com/#ajax


0 за отговор № 3

От уебсайта на jQuery за зареждане

Този метод е най -простият начин за извличане на данниот сървъра. то е приблизително еквивалентен на $ .get (url, data, success), с изключение на това, че е a метод, а не глобална функция и има имплицитно обратно извикване функция. Когато бъде открит успешен отговор (т.е. когато textStatus е "успех" или "немодифициран"), .load () задава HTML съдържанието на съвпадащ елемент с върнатите данни.

можеш да четеш разлика между товара ajax в StackOverflow.

Но, load не е за изпращане на формуляр с помощта post метод. И двете POST и GET са различни методи и работят по различен начин, данните се подават с помощта GET метод ще бъде наличен в $_GET масив, но не и в $_POST.