Domanda

Vorrei fare qualcosa del genere:

<x:out select="$productXML/product/sizes/size[<c:out value='${param.sizeIndex}'/>]" escapeXml="false"/>

ma penso che l'unico modo per farlo sia in questo modo:

<x:forEach var="size" begin="${param.sizeIndex}" end="${param.sizeIndex+1}" select="$productXML/product/sizes/*">  
    <x:out select="$size" escapeXml="false"/>
</x:forEach>

C'è un modo per farlo più come nel modo in cui voglio?

È stato utile?

Soluzione 3

Grazie a GClaramunt [utente 98867] che mi ha messo sul punto giusto, ho scoperto la risposta corretta:

<x:out select="$productXML/product/sizes/size[$param:sizeIndex]" escapeXml="false"/>

Altri suggerimenti

Non sei sicuro di cosa stai cercando di risolvere, ma sei sicuro di aver bisogno di <c:out value='${param.sizeIndex}'/> all'interno di '[]'? JSTL dovrebbe essere elaborato tutto allo stesso tempo e dovresti essere in grado di scrivere qualcosa del tipo:

<x:out select="$productXML/product/sizes/size[param.sizeIndex]" escapeXml="false"/>

O forse usando <c:set var="sIdx" value="${param.sizeIndex}" />

Ma non ho alcuna familiarità con i tag XML JSTL per essere sicuro al 100% ...

Penso di aver trovato quello che stai cercando qui :

<x:set var="abook"
select="$applicationScope.booklist/
        books/book[@id=$param:bookId]" />
  <h2><x:out select="$abook/title"/></h2> 
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top