0

以下で誰でも助けることができます。

条件が真の場合にのみ、jsf のコマンド リンク タグを使用して新しいブラウザー タブを開く必要があります。

jsfタグで条件を設定するには?

4

2 に答える 2

0

commandMenu の管理対象 Bean actionListener を使用して、条件をテストし、真の場合は新しいタブのページにリダイレクトできます...

ここに画像の説明を入力

import javax.faces.event.ActionEvent;

パブリック クラス PageBean {

String page;

public PageBean() {
}

public void getMenu(ActionEvent actionEvent) {
    // Add event code here...

/* 条件を取得してテストするコードを追加し、条件 true および false 条件に基づいて、次の方法でクリックされたメニューの commandMenu ID を取得します

コマンドメニューのIDには、メニュークリック時に次のタブで開きたいのと同じ名前を付けてください。私の場合のように、コマンドメニューIDをpage1 String id = actionEvent.getComponent().getId();として指定しました。System.out.println(" メニュー ID : "+id); 取得したメニュー ID を適切なページ拡張子を持つページ変数に設定し、マネージド Bean からのアクションでパリブルにアクセスして、検証のテスト後にメニュー クリック時に次のタブのページにリダイレクトします */

    page = id;
    System.out.println("Value assigned to the page from the menu Id is :"+page);
}

public String getPage() {
    return page;
}

public void setPage(String page) {
    this.page = page;
}

public void dashContentEntryCheck(){
    System.out.println("entered inside dashboard content task flow");
}

}

于 2013-03-22T07:47:52.563 に答える
0

rendered属性を使用して、EL 式でそれらを完成させることができます。属性を使用するrenderedと、条件が の場合にのみリンクが表示されますtrue

条件に応じて新しいブラウザー タブでコマンドリンクを開きたい場合は、rendered属性を使用して簡単に実現できます。

<h:commandLink action="my_navigation_rule"
               rendered="#{!MyBean.booleanValue}" />

<h:commandLink action="my_navigation_rule"
               rendered="#{MyBean.booleanValue}" target="_blank"/>

条件が排他的であるためrendered、commandLinks の 1 つだけが出力されます。

JSF 式言語 (EL) の詳細 ( jsf タグで条件を設定するのに非常に便利) -->こちら

:EL式を使用して値を決定できるため、ソリューションを改善できることはわかっていますtargetが、私の意見では、このソリューションの方が簡単です。

于 2013-03-20T15:22:47.690 に答える