9.1 $ nesnesi ve jQuery'de ajax yöntemi
jQuery ayrıca ağ ile çalışmak için özel bir global nesneye sahiptir. Tahmin edebileceğiniz gibi adı $
. Evet, isim bu. Ama basit ve kullanışlı.
Diyelim ki JavaScript'inizdeki bir API'ye istek göndermek ve alınan yanıtı işlemek istiyorsunuz. Bu şu şekilde yapılabilir:
$.ajax({
type: "POST",
url: "api.codegym.cc",
data: {name: 'Bill', location: 'Radmond'},
success: function(msg){
alert( "Person found: " + msg );
}
});
İşte bu, tüm kod bu. Yöntemi , ihtiyacımız olan her şeyi açıklayan nesneyi ilettiğimiz nesne üzerindeki $
yöntemi çağırıyoruz : hem istek hem de yanıt.ajax()
- Alan,
type
HTTP isteğinin türünü belirtir:GET
veyaPOST
- Alan, talebin kime gönderileceğini
url
belirtir .url
- Alan,
data
istek verilerini JSON biçiminde belirtir - Başarı alanı , sunucudan başarılı bir yanıt alındıktan sonra çağrılacak bir işlevi belirtir .
9.2 Yararlı sorgular
Ancak herhangi bir veri aktarmanız gerekmiyorsa, talep daha da kısa yazılabilir. Örneğin, şöyle basit bir POST isteği yazabilirsiniz :
$.post("ajax/test.html", function( data ) {
$( ".result" ).html( data );
});
Kodun ne yaptığını biliyor musun $( ".result" ).html( data );
? Tahmin etmeye çalışalım...
Belgede sonuç sınıfına sahip bir öğe bulur ve içine HTML kodu ekler - data data
. Böylece birkaç satırda sunucudan veri indirebilir ve sayfanıza ekleyebilirsiniz. Peki, bu bir güzellik değil mi? :)
Bir GET isteği birkaç satırda da yazılabilir:
$.get("ajax/test.html"., function( data ) {
$( ".result" ).html( data );
});
Bir komut dosyası indirip çalıştırmak ister misiniz?
$.ajax({
method: "GET",
url: "test.js",
dataType: "script"
});
En son HTML sayfasını aldınız mı?
$.ajax({
url: "test.html",
cache: false
})
.done(function( html ) {
$( "#results" ).append( html );
});
İnternette bazı çok iyi jQuery belgeleri var:
Ek olarak, tüm yaygın sorular Google'da kolayca aranır ve StackOverflow'tadır.