0

バッキング Bean の arraylist の値から、javascript 関数 (xhtml 内) で配列を初期化したいのですが、arraylist 要素に個別にアクセスできます。

s2='#{sel_bean.retarr1(0)}';
alert(s2);

ここで、retarr1() は、arraylist の i 番目の要素を返す Bean のメソッドですが、for ループ内でそれを実行しようとすると、0 番目の要素のみが返されます。

for(i=0;i<s1;i++)
{
  alert(i);
  alert('#{sel_bean.retarr1(i)}');
  s2='#{sel_bean.retarr1(i)}';
  distarr.push(s2);
} 
4

1 に答える 1

0

行間を読んでJSFを使用していると仮定すると

jsf を使用して配列プッシュ操作を作成できますui:repeat

<ui:repeat value="#{msel_bean.retarr1}" var="item">
  <h:outputText value="distarr.push(#{item})" />
</ui:repeat>

別のバリアントは、配列をui:repeat次のように初期化することです。

var distarray = [
     <ui:repeat value="#{msel_bean.retarr1}" var="item">
       <h:outputText value="'#{item}', " />
     </ui:repeat>
];

文字列の配列のみを取得することに注意してください。

于 2012-04-10T11:26:20.137 に答える