以下の 2 つの質問があります。
ページの左側にメニューとサブメニューがあり、ページの中央にタブビューがあります。menuItem をクリックすると、javascript を使用して tabview にタブを動的に追加します
が、バッキング Bean から tabview のタブを取得できません。JavaScriptで追加する前に、最初のタブしか読めません。サーバー側とクライアント側でタブビューを同期的に一致させたいと思います。
これどうやってするの ?
そして2番目。タブを閉じると、onTabClose メソッドで TabCloseEvent を使用しますが、イベントは常に null です。タブビューをサーバー側とクライアント側に一致させることで解決されるかもしれません。
コードは以下の通りです。
教えてください。
ありがとう..
xhtml コード:
<p:menuitem value="#{itemMenu.menuAck}"
action="#{MenuBean.OpenPage(itemMenu.pageName)}"
ajax="true"
oncomplete="handleTabViewEvent(args);" />
<script type="text/javascript">
function handleTabViewEvent(args) {
alert('Add tab here..');
}
</script>
ビーンコード:
public void OpenPage(String pageName) {
String s = "Divert to handleTabViewEvent function";
}
public void onTabClose(TabCloseEvent event) {
FacesContext context = FacesContext.getCurrentInstance();
TabView tw = (TabView)context.getViewRoot().findComponent("centerForm:tw");
String s = "I must delete tab here from tw which closed.
But event does not give me tab information. It is always null. And tw has old values";
}