JQuery eklentileri kullanmadan AJAXIFY bir form deniyorum. Bunun gerçekleşmesi için süreç nedir? Benim formum var. Eylemi ne yapmalıyım? Başlık senaryosu ne olmalı? Herhangi bir eklenti kullanmak istemediğimi unutmayın. Sadece jquery kullanarak formları ajaxifying için temel bir algoritmaya ihtiyacım var.Bir formu ajaxify için jQuery'yi nasıl kullanırım?
cevap
Eylem, whatever it would be if you weren't using JavaScript olmalıdır.
Not: Aşağıda tüm bağlantılar Sonra bind a function to the submit
olay serialized form verileri ve bu kullanılan) bir Ajax request (muhtemelen reading the URI from the action attribute yapmak olacağını jQuery belgelerin ilgili bölümünde)
gidin. Gönderme etkinlikleri için prevent the default action olmalıdır.
jQuery'nin X-Requested With HTTP üstbilgisi oluşturduğuna inanıyorum. Bu nedenle, eğer mevcutsa (doğru değerle), farklı veriyi geri getirmek için sunucu tarafındaki işleminizi değiştirmeniz gerekir. Bu sadece farklı bir görünüme geçmek kadar basit olabilir (eğer bir MVC kalıbı kullanıyorsanız).
Bu, bağlıdır. Sadece sayfayı yeniden olmadan değerleri göndermek isterseniz, ben o zaman fonksiyonunu
function submitValues() {
//do stuff here
jQuery.ajax({
//your ajax parameters here
});
//this is important to cancel the default action on submit (ergo. go to the address as defined in action
return false;
}
kuracak, bu sonra bu kadar
jQuery('form#myForm').bind(submitValues);
gibi bir işleve formun gönderme etkinliğini bağlamak önermek
ajax komutunda daha fazla bilgi için, bkz. here
En basit yöntem $ .load() yöntemini kullanmaktır.
$ .Load (aksiyon, veri, geri arama)
eylem bir PHP komut dosyası, ASP sayfası veya basitçe başka bir web sayfası olabilir. Veri boşsa, bir GET gerçekleştirir. Aksi takdirde, bir POST gerçekleştirir. Geri bildirim yöntemi, yöntem tamamlandığında yürütülür (zorunlu değil). Örneğin
http://docs.jquery.com/Ajax/load
: form gönderildiğinde
<form>
$.load("scripts/processOrder.php", { item: itemID, quantity: ordered }, function {
window.location.href = "orderComplete.htm";
});
</form>
, processOrder komut ItemID ile yürütülür ve veriler olarak geçen verileri istenir. Komut tamamlandığında, tarayıcı ek işlem veya durum gösterimi için orderComplete sayfasına gider.
Ajaxification üzerinde daha fazla denetim yapmak isterseniz, $ .get, $ .post veya $ .ajax yöntemlerini kullanabilirsiniz.
- 1. R? Için çıktı bileşenleri için $ nasıl kullanırım?
- 2. Bir semafor yönetmek için bir veritabanını nasıl kullanırım?
- 3. Tek bir (Modal olmayan) formun bir örneğini, bu form atılana kadar çözmek için autofac'ı nasıl kullanırım?
- 4. Uyumsuz değerleri ayırmak için türleri nasıl kullanırım
- 5. Sayfalar arasında gezinmek için Scrapy'yi nasıl kullanırım?
- 6. JavaScript'i kaydetmek için RegisterClientScriptBlock'u nasıl kullanırım?
- 7. Genel koleksiyon çağrı için Linq'i nasıl kullanırım?
- 8. Ayrı XIB'leri yüklemek için UIPageViewController'ı nasıl kullanırım?
- 9. Wordpress'te bir başvuru formu oluşturmak için PHP
- 10. Microsoft.Web.Deployment yüklemek için Add-Type'ı nasıl kullanırım?
- 11. Cümlenin değiştirilmesi için RegExp Replace'ı nasıl kullanırım?
- 12. Cygwin'de Perl için nasıl tanı kullanırım?
- 13. Yemlemede parçacığı nasıl kullanırım?
- 14. Drools Planner'ı nasıl kullanırım?
- 15. AVAssetWriter'i nasıl kullanırım?
- 16. Zend formu için css nasıl ayarlanır?
- 17. jQuery FIle Upload'u yuvalanmış bir biçimde nasıl kullanırım?
- 18. Android İvmeölçer'i nasıl kullanırım?
- 19. İkinci bir dizin almak için pkginclude_HEADERS ve Automake'yi nasıl kullanırım?
- 20. Bir değeri okumak için LOCK ASM önekini nasıl kullanırım?
- 21. Bir SVG öğesini klonlamak için javascript'i nasıl kullanırım?
- 22. Textmate'de kodu otomatik olarak yorumlamak için bir kısayolu nasıl kullanırım?
- 23. Linux'ta bir C++ Programını Hata Ayıklamak için Eclipse'i Nasıl Kullanırım?
- 24. Belirli bir aralıkta sayı yapmak için rand işlevini nasıl kullanırım?
- 25. Bir sınıfın istediğim sınıf OLMADIĞINI saptamak için hasClass'ı nasıl kullanırım?
- 26. Bir asenkronize çağrıyı başlatmak için Grand Central Dispatch'u nasıl kullanırım?
- 27. Yerel resimlerle yerel bir html yazdırmak için UIMarkupTextPrintFormatter'ı nasıl kullanırım?
- 28. Bir çocuğun çocuğunu bulmak için jQuery .each() öğesini nasıl kullanırım?
- 29. gluLookAt'ı nasıl düzgün kullanırım?
- 30. SyndicationFeed'i nasıl kullanırım?
X-Requested With üstbilgisine güvenmek yerine, JS/jQuery teslim işleyicisinde 'flag' girdisi ayarlayabilirsiniz: HTML: ... JAVASCRIPT: $ ('input # is_ajax'). Val ('Y'); ... Daha sonra is_ajax POST değeri == 'Y' için sunucu tarafı testi. – micahwittman