Thread View: pl.comp.lang.javascript
4 messages
4 total messages
Started by lamer
Thu, 12 Nov 2009 18:25
Jak przeslac drzewo (lista UL) do serwera w najlepszy sposob?
Author: lamer
Date: Thu, 12 Nov 2009 18:25
Date: Thu, 12 Nov 2009 18:25
21 lines
1482 bytes
1482 bytes
Hej Jest drzewo, np. takie: <ul> <li>Raz <ul> <li>Dwa <li>Trzy </ul> <li>Cztery </ul> Musze je przeslac do PHP. Moge oczywiscie wziac caly kod HTML drzewa i przeslac, ale potem musze na serwerze ten HTML parsowac, a ja nie chce meczyc serwera. Jak najlepiej te drzewo przetworzyc w JavaScripcie, zeby po wyslaniu na serwer jego dalsza obrobka byla w miare prosta? Do JSONa? Do XML? No i jak przekonwertowac szybko takie drzewo do innego formatu? lamer
Re: Jak przeslac drzewo (lista UL) do serwera w najlepszy sposob?
Author: lamer
Date: Thu, 12 Nov 2009 19:46
Date: Thu, 12 Nov 2009 19:46
5 lines
1084 bytes
1084 bytes
jQuery:
$('#jakiesID li').each(function() {} );
lamer
Re: Jak przeslac drzewo (lista UL) do serwera w najlepszy sposob?
Author: Andrzej Kmicic
Date: Sun, 22 Nov 2009 07:19
Date: Sun, 22 Nov 2009 07:19
118 lines
3056 bytes
3056 bytes
lamer pisze:
> Hej
> Jest drzewo, np. takie:
>
> <ul>
> <li>Raz
> <ul>
> <li>Dwa
> <li>Trzy
> </ul>
> <li>Cztery
> </ul>
>
> Musze je przeslac do PHP. Moge oczywiscie wziac caly kod HTML drzewa i
> przeslac, ale potem musze na serwerze ten HTML parsowac, a ja nie chce
> meczyc serwera.
> Jak najlepiej te drzewo przetworzyc w JavaScripcie, zeby po wyslaniu na
> serwer jego dalsza obrobka byla w miare prosta?
> Do JSONa? Do XML? No i jak przekonwertowac szybko takie drzewo do innego
> formatu?
>
> lamer
Hej
Json i XML też musi serwer parsować , czy tak czy tak "wsio rawno",
budowa ul moze być zagnieżdzona wiec mysle najlepiej wprost zrobic z
tego XML tylko uzupełnic o nagłówek(ale nie koniecznie) i gotowe.
Tylko z pewnością podomykac nalezy tagi <li> :
<ul>
<li>Raz</li>
<ul>
<li>Dwa</li>
<li>Trzy</li>
</ul>
<li>Cztery</li>
</ul>
prosty parser :
<?php
$xml="<ul>
<li>Raz</li>
<ul>
<li>Trzy</li>
<li>Cztery</li>
<ul>
<li>Piec</li>
<li>Szesc</li>
</ul>
</ul>
<li>Dwa</li>
</ul>";
$dom = new domDocument;
$dom->loadXML($xml);
if (!$dom) {
echo 'Error while parsing the document';
exit;
}
$s = simplexml_import_dom($dom);
print_r($s);
print_ul($s,0);
// rekurencyjny czytacz obiektów SimpleXMLElement
function print_ul($sObject,$level) {
foreach($sObject as $key=>$item) {
if ($key=='ul')
print_ul($item,$level+1); else
echo $key."($level)->".$item."\n";
}
}
?>
wynik:
SimpleXMLElement Object
(
[li] => Array
(
[0] => Raz
[1] => Dwa
)
[ul] => SimpleXMLElement Object
(
[li] => Array
(
[0] => Trzy
[1] => Cztery
)
[ul] => SimpleXMLElement Object
(
[li] => Array
(
[0] => Piec
[1] => Szesc
)
)
)
)
Wynik z czytacza:
li(0)->Raz
li(1)->Trzy
li(1)->Cztery
li(2)->Piec
li(2)->Szesc
li(0)->Dwa
pozdr
AK
Re: Jak przeslac drzewo (lista UL) do serwera w najlepszy sposob?
Author: lamer
Date: Sun, 22 Nov 2009 22:06
Date: Sun, 22 Nov 2009 22:06
10 lines
1364 bytes
1364 bytes
Jest to jakas opcja. Ale zeby nie meczyc serwera to w JS zrobilem parsowanie drzewa do postaci ID elementu, ID rodzica ID elementu2, ID rodzica2 Po przeslaniu tego do PHP mam juz niemal gotowe dane do wrzucenia do bazy bez meczenia serwera rekurencjami. lamer
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads