2009-10-27 16 views
10

Ajax/jQuery.ajax işlevini kullanarak harici bir sayfadan DIV öğesini geçerli sayfama yüklemeye çalışıyorum. Tüm bir dış sayfayı başarıyla yükleyebildiğim halde, sadece DIV öğesini yüklemiyor gibi görünmüyor.Harici bir sayfanın bir bölümünü yüklemek için Jquery'de Ajax() işlevini kullanın.

İşte benim kod:

$("a").click(function() { 
    /* grabs URL from HREF attribute then adds an */ 
    /* ID from the DIV I want to grab data from */ 
    var myUrl = $(this).attr("href") + "#external-div"; 
    $.ajax({ 
    url: myUrl, 
    success: function(html) { 
    /* loads external content into current div element */ 
    $("#current-div").append(html); 
    } 
    }); 
    return false; 
}); 

O herhangi bir sorun olmadan HREF özelliğini yakalar ama URL'ye "# dış-div" ekleyin olmaz. Herhangi bir fikir?

Çok teşekkürler!

~ Jared Crossley

+0

İstediginiz url, üzerine "# external-div" almistir, ancak iletisim arka arkaya ne olursa olsun, yalnizca bir div istersiniz. – wambotron

cevap

11

sadece o size jQuery Ajax/load documentation bir göz atın basitçe içerik

$("a").click(function() { 
    /* grabs URL from HREF attribute then adds an */ 
    /* ID from the DIV I want to grab data from */ 
    var myUrl = $(this).attr("href") + " #external-div"; 
    $("#current-div").load(myUrl); 
    return false; 
}); 

ala senin #current-div içine döndü yüklemek için jQuery load yöntemi kullanabilirsiniz div dönmek istiyorsa

+0

Merhaba Quintin, Hızlı yanıtınız için teşekkür ederiz. Ne tür bir etki zincirleme ve veri yönetimi yapabileceğimi sınırladığı için, yük yöntemini kullanmamayı tercih ederim, ama şu anda bildiğim tek seçenek. Cevabınız için tekrar teşekkürler. Ajax/jQuery.ajax işlevinin harici bir div yüklememe izin vereceğini kimse bilen var mı? – user196986

+0

Bu tam olarak doğru değil, yükleme yöntemi için hala bir geri arama sağlayabilir ve orada zincirleme uygulayabilirsiniz, açıklanan kod (kod aracılığıyla) yükün ötesinde bir şey gibi görünür. Özellikle, yayınlamaya çalıştığınız şeyden başka bir şey var mı? –

+0

İyi nokta. Sanırım sorum tamamen tamamlanmadı. Yükleme yöntemi gayet iyi çalışıyor, ancak kendimi bulabileceğim iki senaryo daha var. Senaryo 1) XML verilerini (HTML yerine) yüklemem ve/veya bir form için bir POST yapmam gerekebilir. Senaryo 2) Yukarıdaki örnekte, mevcut içeriği silmeyi, yeni içeriği yüklemeyi ve yeni içerikte yer açmak istiyorum. Ancak, load() yöntemini çağırdığım anda, bir önceki içeriğin tamamen sönmesini beklemek yerine, yeni içeriği anında yükler. Daha açık olmamak için özür dilerim. – user196986