Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [jQuery][AJAX] Obiektowość zwracanej treści
Jazi
post
Post #1





Grupa: Zarejestrowani
Postów: 122
Pomógł: 2
Dołączył: 25.08.2009
Skąd: Toruń / Bydgoszcz

Ostrzeżenie: (10%)
X----


Witam,
Mam dwa następujące pytania:

Pytanie nr 1
Mam zmienną w JavaScript zwącą się 'text' i zawiera następującą treść:
Kod
<div id='x'>x</div><div id='y'>y</div>
Pytanie brzmi: jak za pomocą javascript/jquery pobrać zawartość np. diva #x zwracając się do jego identyfikatora?
Próbowałem jakoś kombinować w ten sposób
Kod
$(test).children("#formularz_dodawania").val()

ale mi to nie wychodziło...

Pytanie nr 2
Chciałbym za pomocą jQuery/AJAX łączyć się z plikiem, który zwraca tak jakby dwa zestawy kodów HTML [np w osobnych div'ach o unikalnych identyfikatorach] (abym mógł jeden kod wstawić w jedno miejsce strony, a drugi w inne miejsce).
Np.
Kod
<div id='x'>kod HTML nr 1</div>
<div id='y'>kod HTML nr 2</div>

Na chwilę obecną wiem (albo nie wiem, bo się mylę - jeżeli tak jest to mnie poprawcie), że w XMLu raczej nie da się przechowywać kodu HTML. Nie zrobię więc tak jak niżej ze względu na to, że HTML ma znaczniki '<' oraz '>'.
Kod
<kod1>kod HTML nr 1</kod1>
<kod2>kod HTML nr 2</kod2>

Za pomocą jakiej technologii sobie z tym poradzić? Jakieś podpowiedzi?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 6)
frok
post
Post #2





Grupa: Zarejestrowani
Postów: 19
Pomógł: 0
Dołączył: 18.07.2009

Ostrzeżenie: (0%)
-----


<div id='x'>x</div><div id='y'>y</div>

Odp nr 1:
var textHTML = $('#x').html(); //zwraca kod html znajdujący się w divie x
var text = $('#x').text(); //zwraca czysty tekst

Odp nr 2:
pobierz.html:
<div id="z_tego_diva">Treść pobierana dynamicznie</div>

index.html:
$('#result').load('pobierz.html #z_tego_diva');


--------------------
raz dwa trzy, raz dwa trzy
Go to the top of the page
+Quote Post
Jazi
post
Post #3





Grupa: Zarejestrowani
Postów: 122
Pomógł: 2
Dołączył: 25.08.2009
Skąd: Toruń / Bydgoszcz

Ostrzeżenie: (10%)
X----


Ad 1.
No niezbyt mi o to chodziło. W Twojej wersji to wygląda tak, jakbym kod miał już dodany na stronie, a tutaj mam to w zmiennej.

Ad 2.
W Twojej metodzie (.load()) nie można chyba skorzystać z trybu POST oraz wpisać argumentów. A potrzebne mi są te dwa warunki.


Kolejne pytanie. Jak mam kod:
Kod
var test = "<div id='d1'>tresc1</div><div id='d2'>tresc2</div>";
var wartosc = $(test +" #d2").html();
alert(wartosc);


To alert() zwraca mi wartość "tresc1", a nie "tresc2". Co robię nie tak?

Ten post edytował Jazi 17.04.2011, 09:25:14
Go to the top of the page
+Quote Post
frok
post
Post #4





Grupa: Zarejestrowani
Postów: 19
Pomógł: 0
Dołączył: 18.07.2009

Ostrzeżenie: (0%)
-----


Ad1, ad 3
http://www.poradnik-webmastera.com/kursy/j...a_regularne.php


AD2

$.ajax({
type: "POST",
url: "some.php",
data: "name=John&location=Boston",
success: function(msg){
alert( "Data Saved: " + msg );
}
});


--------------------
raz dwa trzy, raz dwa trzy
Go to the top of the page
+Quote Post
Jazi
post
Post #5





Grupa: Zarejestrowani
Postów: 122
Pomógł: 2
Dołączył: 25.08.2009
Skąd: Toruń / Bydgoszcz

Ostrzeżenie: (10%)
X----


Ad 1.
Czyli mam rozumieć, że nie da się wydobyć zawartości jakiegoś DIVa (odwołując się do jego identyfikatora/klasy) znajdującego się w zmiennej jako tekst?

Ad 2.
No podałeś mi formę z POST i wiem, że takie coś istnieje... ale czy ma taką funkcjonalność, jak podany przez Ciebie load...?
Go to the top of the page
+Quote Post
melkorm
post
Post #6





Grupa: Zarejestrowani
Postów: 1 366
Pomógł: 261
Dołączył: 23.09.2008
Skąd: Bydgoszcz

Ostrzeżenie: (0%)
-----


Ad .1
Kod
var test = '<div><div id="a">treść</div></div>';
alert( $('#a',$(test)).html() );


Ad.2
Analogicznie:
Kod
// funkcja callback z parametrem odpowiedzi (response)
function(response)
{
var el = $('<div></div>').html(response);
alert( $('#x', el).html() );
alert( $('#y', el).html() );
}


Ten post edytował melkorm 17.04.2011, 12:23:39


--------------------
Go to the top of the page
+Quote Post
Jazi
post
Post #7





Grupa: Zarejestrowani
Postów: 122
Pomógł: 2
Dołączył: 25.08.2009
Skąd: Toruń / Bydgoszcz

Ostrzeżenie: (10%)
X----


Dzięki, działa :]
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 21.08.2025 - 10:47