Nasıl belirli bir div ile karıştırmasını için jQuery kullanmak, ancak geçerli belgede değil - bir değişken, bu HTML içerir?

4 Cevap php

Nasıl belirli bir div ile karıştırmasını için jQuery kullanmak, ancak geçerli belgede değil - bir değişken, bu HTML içerir?

The point is that I want to show a preview of a page (a piece of it's content) in a modal window, when the link to this page is clicked. Well, onClick I load this whole HTML into a variable via JSON and then... how would I find a particular div I need in it? It's gonna be almost impossible to parse it with PHP before converting it into JSON and giving back to jQuery processor because of a deep hierarchy. Basically, is it even possible to do smth like $( 'div#some-id' ).blabla(); not for the current document, but for the document, stored in a variable?

Önceden thx herkes.

4 Cevap

Jquery çağrıları isteğe bağlı içerik argümanını kullanın. Diğer bir deyişle,

$('div#some-id', document).blabla();

Ayrıca @ NSayer ne yazdı benzer olduğu (bunu şöyle yapabiliriz:

$.get(url, {parameters}, function(data){
    $('#somePartOfThePage', data);
});

Eğer jQuery $. Ajax fonksiyonunu kullanarak ediyorsanız, böyle bir şey yapabilirim ...

$.ajax({
  success: function(responseText) {
    $("#previewDiv").html($("div#content", responseText).html());
  }
});

"Başarı" yöntemi html dönecektir (veya $ koymak ne olursa olsun. Ajax DataTypeözellik için), bu durumda ben ona ismini "responseText" verdik (burada herhangi bir geçerli değişken adı koyabilirsiniz ama). Sonra, ben, responseText arandı # content div html yakaladı ve önizleme div içine ekledikten.

O ses yapmak isteyen ne gibi mi?

jQuery .load() bir unsuru haline sayfa parçaları yükleyebilirsiniz:

$('#modalWindow').load('http://example.com/ #content');