5

mojarra primefaces tomcat6.x を使用して JSF2.0 プロジェクトを作成しています。

選択リストを作成し、リストの項目を選択すると、選択した URL にリダイレクトしたいと考えています。内部 URL の場合もあります。

うまくいきましたが、新しいウィンドウにリダイレクトできるかどうか知りたいです。

次のコード JSF があります。

        <h:form>
            <h:selectOneMenu onchange="this.form.submit();" valueChangeListener="#{wagent.selectBusinessTravelLink}">
                <f:selectItem itemLabel="#{msg['form.select.defaultValue']}" itemValue="" noSelectionOption="true"/>
                <f:selectItems value="#{wagent.businessTravelLinks}" var="bLinkItem" itemLabel="#{bLinkItem.label}" itemValue="#{bLinkItem.id}" />
            </h:selectOneMenu>
        </h:form>

ジャワ:

   public void selectBusinessTravelLink(ValueChangeEvent event) {
// some stuff
FacesContext.getCurrentInstance().getExternalContext().redirect(targetUrl);
}
4

2 に答える 2

3

イベント中ではwindow.open()なくJavaScriptの機能を使用してください。form.submit()change

選択項目の値が十分な URL であると仮定すると、次の例が表示されます。

<h:selectOneMenu onchange="window.open(this.options[this.selectedIndex].value)">
于 2011-02-09T21:18:21.847 に答える