2014-05-06 24 views
6

Kaynak paketindeki dize listesini göstermek için s:select kullanıyoruz. JSP iseStruts 2 s: kaynak kümesinden gelen değerlerle seç

bank.code.12= ALFM Bank 
bank.code.13= RIHN Bank 

.... 

: As

<s:select name = "selectedBankCode" 
      list = "bankCodesList"   
      listKey = "toString()" 
     listValue = "%{getText('bank.code.' + toString())}" /> 

her banka bir ada sahip olur

mesaj kaynaklarda
//bank codes will be something [12,13,14] 
List<String> bankCodesList; //with setter and getter 
String selectedBankCode; 

: In Action

banka listesi List<String> anahtarını almak için toString() kullandık ve kaynak paketten değer elde etmek için toString() kullandık.

s:select ürününün status özelliklerinin s:iterator ile aynı olduğunu bulmadık ama bulamadık!

Yani daha iyi yollar olduğunu mu düşünüyorsun ?!

+1

Neden bunu beklediğinizden emin değil; ', kendi kendine yeten bir özelliktir. İterasyonunu ortaya çıkarmaz. Şahsen bu veriyi Java katmanında bir yerde oluşturup eylemi ya da yardımcısı aracılığıyla etikete sunmanız gerektiğini düşünüyorum. –

+2

Durum? Neden statüye ihtiyacınız var? 'Top' anahtar sözcüğünü kullanın. –

+0

+1 @AleksandrM teşekkürler! Bu anahtar kelimeyi nereden buluyorsun? Çok araştırdım! –

cevap

7

Bu özniteliği kaldırabilmeniz için listKey özniteliğinde toString() numaralı telefonu aramanız gerekmez. Ve listValue'da top anahtar sözcüğünü kullanabilirsiniz.

<s:select name = "selectedBankCode" 
      list = "bankCodesList" 
    listValue = "%{getText('bank.code.' + top)}" /> 

top kelime örneklerde here ve here bahsedilmektedir.