1

私は選択しています:

<h:selectOneMenu id="treeNode" label="#{msgs.treeNode}" value="#{treeNode}">
  <f:selectItems value="#{treeItems}" />
</h:selectOneMenu>

これらのselectItemsを使用します:

List<SelectItem> treeItems = new ArrayList<SelectItem>();
treeItems.add(new SelectItem("1", "Parent"));
treeItems.add(new SelectItem("2", "  Child 0 0"));
treeItems.add(new SelectItem("2", "    Child 0 0 0"));
treeItems.add(new SelectItem("2", "    Child 0 0 1"));
treeItems.add(new SelectItem("2", "  Child 0 1"));

私の問題は、選択の出力がツリーのように見えるはずですが、空白がなくなっているため、「フラット」ビューになっていることです。

ウィットスペースを壊れないスペースに変換する方法はありますか?

ありがとうジョニー

4

2 に答える 2

2

&nbsp;それらを自分で置き換えて、escape属性を に設定するだけですfalse。コンストラクタの 5 番目の引数ですSelectItem

List<SelectItem> treeItems = new ArrayList<SelectItem>();
treeItems.add(new SelectItem("1", "Parent", null, false, false));
treeItems.add(new SelectItem("2", "&nbsp;&nbsp;Child 0 0", null, false, false));
treeItems.add(new SelectItem("3", "&nbsp;&nbsp;&nbsp;&nbsp;Child 0 0 0", null, false, false));
treeItems.add(new SelectItem("4", "&nbsp;&nbsp;&nbsp;&nbsp;Child 0 0 1", null, false, false));
treeItems.add(new SelectItem("5", "&nbsp;&nbsp;Child 0 1", null, false, false));
于 2012-04-19T13:01:16.307 に答える
0

最後の treeItem が追加された後、各 SelectItem を繰り返し処理し、各空の文字列 " " を " " に置き換える foreach を配置できます&nbsp;か?

于 2012-04-19T12:30:00.417 に答える