2012-04-15 4 views
3

f:ajaxタグ内にページのタイトルを含める方法はありますか?そのコンテンツも実行時に更新されますか?しかし、もし、AJAXタグ:headタグ、およびFの「レンダリング」プロパティにそのIDを追加: - : 現在、私のF iの時間にIDを追加しようとしましたレンダリングのページタイトルjsfを使用して2

<f:ajax render="@form"> 

AJAXタグはこのようになります私はので、私はエラーが出るんページのロード時 -

<f:ajax> contains an unknown id 'pageHead' - cannot locate it in the context of the component B1 

歓声、 エレズ

答えて

4

興味深い質問。私はページタイトルを再レンダリングするためのajax(@formのような)のレンダリングにそのようなコマンドはないと思う。

<h:form id="titleForm"> 
     <title>#{fooBean.fooTitle}</title> 
    </h:form> 

そしてAjaxの更新などを呼び出す:あなたはどうすることができ、このような<h:form>または他の「グループ化」コンポーネント(。ダニエルが言ったように例えばh:panelGroup)で<title>をラップすることです。

 <h:commandButton immediate="true" value="Change title"> 
      <f:ajax event="click" render=":titleForm" listener="#{fooBean.changeTitle}"/> 
     </h:commandButton> 

豆:ボタンで

private String fooTitle; 

    public void changeTitle() { 
     this.fooTitle= "updatedTitle"; 
    } 
// getter/setter 

私はあなたができる他に何かわからない、これは動作するはずです。したがって、title<h:form id="...">にラップし、それをajaxからレンダリングします。

+0

"@all"はありますが、 "@form"以外は何もありません – Ravi

+0

@Raviはい、 "@all"があることを知っています。私は、ページタイトルのレンダリングに関連するタグがないと言っていただけです。 – Fallup

+1

で十分です...とにかくh:commandButtonがフォームにラップされます。 – Daniel

関連する問題