2011-01-07 15 views
5

JSP'deki bir veri tablosunda dipnotları göstermek için artırılmış tek karakterler göstermem gerekiyor. Java'da normalde bir char değişkenine sahip olurum ve onu artırır veya bir int (= char) (i + 97), 0-tabanlı bir indeksi a-z'ye dönüştürmek için (i + 97), onu çevirerek bir char'a dönüştürür. Kendi JSTL işlevimi yazarken, bunu ifade dilinde nasıl yapacağımı anlayamıyorum.JSP ifade dilinde int'ye nasıl char dönüşür?

kimse EL char bir int dönüştürmek için nasıl biliyor mu? Ya da EL'de bir char değişkeni nasıl arttırılır? Ya da muhtemelen JSP/EL'de yapmaya çalıştığım şeyi yapmak için daha iyi bir teknik mi?

Ben üretmek gerekiyor ne

Örnek:
bir mydata
b myotherdata
...
bir ilk dipnot
b ikinci dipnot

cevap

6
mümkün değildir

. En iyi bahsiniz, XML öğesi olarak göstermektir.

<c:forEach items="${list}" var="item" varStatus="loop"> 
    <sup>&#${loop.index + 97};</sup> ${item}<br /> 
</c:forEach> 

O &#x61; benzeri bir a ve temsil

<sup>&#97;</sup> item1<br /> 
<sup>&#98;</sup> item2<br /> 
<sup>&#99;</sup> item3<br /> 
... 

olarak böyle bitireceğiz. Liste 26 öğeler üzerinde olduğunda item2
c item3

b a Öğe1

...

Yalnızca bir sorun var.

+0

teşekkür altında ise

<div id="div-a">Div a</div> <div id="div-b">Div b</div> <div id="div-c">Div c</div> <div id="div-d">Div d</div> <div id="div-e">Div e</div> 

, bu sadece çalışacak bu ancak a iyi bir çözüm 'a' altıgen gösterimi ve bu nedenle bu yapmadım olduğunu Oldukça işe yaradı (p'a geldiğinde 10'dan 16'ya kadar olan harfleri atladı). Çözüm, ondalık eşdeğer olan a vb. Kullanmaktı. –

+0

Oh, bu benim için aptaldı. Sabit. – BalusC

1

c: set ve tamsayı bir karaktere çevirmek için xml varlık etiketlerini kullanabilirsiniz. Sen # kaçmak veya amacıyla ters eğik çizgi kullanmak gerekecek id değişken ${...} kodu

şu örneği değerlendirerek yerine anlamıyla üzere &#{(i.index+97)} ayarlanacak olacak "liste" değişkenler ve çıkış div döngü Her biri için kimlik ve "a" ile başlayan içerikler. "Liste" koleksiyonunda 5 öğe olduğunu varsayarak aşağıdaki çıktılar elde edilirdi. Diğer yanıtında belirtildiği gibi Listenizi boyutu 27.