Am avut această problemă Stocare în timp ce crearea unui XSL astăzi. Căutat răspunsuri în întreaga net, dar putut găsi orice .... De fapt, am ghicit! Eu ştiu ce însemna problema mea a fost, asa cum nu ma uit pentru?
Oricum! Doar în cazul în care aveţi această problemă foarte aceeaşi şi oarecum prea de puterea de a te obliga sa a reuşit să aterizeze pe această pagină ... vă mulţumesc să-mi tone ... Şi dacă aţi aterizat accidental de pe aceasta pagina pentru unele soarta ciudat şi se întâmplă să fie un dezvoltator XSL, a face a face o notă de acest lucru acum, pentru cauza viitor, dacă într-o zi, te confrunţi cu această problemă, atunci forţa nu s-ar putea să fie cu voi.
Problemă declaraţie:
Am acest XML, în cazul în care există două noduri cu mai multe elemente în ea, precum şi articole între aceste două noduri au o corespondenţă unu la unu. În exemplul de mai jos, fiecare element în nodul <array name="PLAYURL" /> se referă (poziţia corespunzătoare), la un element în <array nodul name="SITENAME" />
<?xml version="1.0" encoding="utf-8"?>
<myplaylists>
<playlist>
<title>Best of Rest </title>
<array name="SITENAME">
<str>www.musicindiaonline.com</str>
<str>www.dhingana.com</str>
<str>www.raaga.com</str>
<str>www.smashits.com</str>
<str>www.desimusic.com</str>
<str>www.musicplug.in</str>
</array>
<array name="PLAYURL">
<str>http://www.musicindiaonline.com/123/</str>
<str>http://www.dhingana.com/play/123</str>
<str>http://www.raaga.com/123</str>
<str>http://ww.smashits.com/123</str>
<str>http://www.desimusic.com/123</str>
<str>http://www.musicplug.in/123</str>
</array>
</playlist>
</myplaylists>
Acum, am o buclă, în cazul în care am bucla prin <array name="SITENAME">, şi vreau să ajung elementul aferent (de la poziţia corespunzătoare), în <array name="PLAYURL">,
Ce v-ar încerca normaly face este ...
<xsl:for-each select="myplaylists/playlist/array[@name='SITENAME']/str">
play from : <a href="{../../array[@name='PLAY']/str[position()]}"/> <xsl:value-of select="." /></a>
</xsl:for-each>
SORRY! ACEST LUCRU obiceiul ... Ah!! Surpised ...
Acum, ce-ar vrea, probabil, pentru a încerca, ceva de genul asta ...
<xsl:for-each select="myplaylists/playlist/array[@name='SITENAME']/str">
<xsl:variable name="pos"> <xsl:value-of select="position()"/></xsl:variable>
play from : <a href="{../../array[@name='PLAY']/str[$pos]}"/> <xsl:value-of select="." /></a>
</xsl:for-each>
Şi din nou această obiceiul de lucru ... Acum te lamureste, incercand sa contacteze toti cei care credeţi că ştie ceva XSL si ar putea fi de nici un ajutor ... să încercaţi orice altă opţiune ... şi încă mai este obiceiul de lucru ... Ei bine! Asta e ceea ce mi sa întâmplat atleast ...
Dont Disperare! TRY ACEST
<xsl:for-each select="myplaylists/playlist/array[@name='SITENAME']/str">
<xsl:variable name="pos-int" select="position()" />
play from : <a href="{../../array[@name='PLAY']/str[$ <xsl:for-each select="myplaylists/playlist/array[@name='SITENAME']/str">
<xsl:variable name="pos-int" select="position()" />
play from : <a href="{../../array[@name='PLAY']/str[$ pos-int ]}"/> <xsl:value-of select="." /></a>
</xsl:for-each>
]}"/> <xsl:value-of select="." /></a>
</xsl:for-each>
Dont Intreaba-ma de ce functioneaza. Cauza i dont au un motiv drept ... daca faci! Vă rugăm să nu fixaţi un comentariu. Ar putea fi destul de util. De asemenea! dacă aveţi TITLUL mai bine pentru acest post, scrie-mi fac o linie de 