Paweł Kozorys

Paweł Kozorys Manager Sieci
Afiliacyjnej

Temat: jquery - czytanie pliku XML

Cześć,

prośba o pomoc.
Mam XML w którym znajduje się taki fragment:

<tematy>
<temat_1>
<autor>lolek</autor>
<lead>lorem ipsum</lead>
</temat_1>
<temat_2>
<autor>lolek</autor>
<lead>lorem ipsum</lead>
</temat_2>
...
</tematy>

Jak przy pomocy jquery odczytać zawartość elementów <temat_X> (najlepiej w pętli)
Problem w tym, że tych elementów (<temat_X>) może być wiele. Można napisać jakiś uniwersalny skrypt?

Pozdr.

Paweł

konto usunięte

Temat: jquery - czytanie pliku XML

http://api.jquery.com/jQuery.parseXML/
Paweł Kozorys

Paweł Kozorys Manager Sieci
Afiliacyjnej

Temat: jquery - czytanie pliku XML

dzięki ale dokumentację czytałem.
Chodzi mi o specyficzne rozwiązanie - odczytywanie dowolnej ilości elementów nazwanych dość dziwacznie: temat_1, temat_2, temat_3 itd (gdyby nazwano je <temat id="1"> wówczas bym sobie spokojnie poradził).

Nie chcę ręcznie dodawać tych nazw, ponieważ może być ich 100 a innym razem 2. Da się jakoś automatem wyświetlać wszystkie ?

Nie chciałbym powielać poniższej konstrukcji.
$(xml).find("item").each(function () {

$("#count").append(\'\' + $(this).find("temat_1").text() + \'\');
});
}

Pozdr.

Paweł

konto usunięte

Temat: jquery - czytanie pliku XML

Nie wiem jak działa czytanie z XML, ale czy jest problem ze zrobieniem pętli, w której ustawisz sobie nazwę jako zmienną i nadasz jej wartość "temat_" i do tego będziesz dopisywał iterator pętli? Sprawdzenie, czy znalazł, czy nie. Jeśli nie, to przerywa pętlę. Jeśli tak, szuka dla następnego.
Mam nadzieję, że w miarę zrozumiale opisałem?
Paweł Kozorys

Paweł Kozorys Manager Sieci
Afiliacyjnej

Temat: jquery - czytanie pliku XML

Dzieki ... Przegapilem najprostsze rozwiązanie.... :)

Pozdr.

Pawel
Bartosz Ratajczyk

Bartosz Ratajczyk MS SQL Developer

Temat: jquery - czytanie pliku XML

Na szybko dostosowany z przykładu z linku Piotra:

<!DOCTYPE html>
<html>
<head>
<script src="http://code.jquery.com/jquery-latest.js"></script>
</head>
<body>

<p id="someElement"></p>

<script>
var xml = "<teksty><tekst_1><autor>Bartek</autor></tekst_1><tekst_2><autor>Inny niż Bartek</autor></tekst_2></teksty>";
xmlDoc = $.parseXML( xml ),
$xml = $( xmlDoc );


var $root = $xml.find( "teksty" );
for(i = 1; i <= $root.children().length; i++) {
el = $xml.find('tekst_' + i);
$( "#someElement" ).append( el.text() + '<br>' );
}
</script>

</body>
</html>

Następna dyskusja:

Linki do fajnych wtyczek, k...




Wyślij zaproszenie do