2016-04-05 7 views
0

ヘッダーファセット内の最初の<th>タグにイベントハンドラーを含むリンクを挿入したいとします。私が手にエラーがあるXPagesリピートコントロールヘッダーファセット

<xp:this.facets> 
<xp:text disableTheme="true" xp:key="header" escape="false"> 
<xp:this.value><![CDATA[ 
<table class="table table-striped table-hover"> 
<thead> 
<tr> 
<th> 
<xp:link escape="true" text="" id="link1"> 
    <i id="myIconLink" class="fa fa-square-o fa-lg text-success"></i> 
    <xp:eventHandler event="onclick" submit="true" refreshMode="partial" refreshId="tab2Panel"> 
    <xp:this.action><![CDATA[#{javascript: 
    sessionScope.selectAll = "1"; 
    }]]></xp:this.action> 
    </xp:eventHandler> 

</xp:link>         
</th> 
<th>Project Title</th> 
<th>Type of Expenditure</th>  
<th>Plan Amount</th> 
<th>Fiscal Year</th>  
</tr> 
</thead> 
<tbody>]]> 
</xp:this.value> 
</xp:text> 
<xp:text disableTheme="true" xp:key="footer" 
escape="false"> 
<xp:this.value><![CDATA[ 
</tbody> 
</table>]]></xp:this.value> 
</xp:text> 
</xp:this.facets> 

enter image description here

誰もがこの問題を解決する方法上の任意の提案を持っています以下のコード例を参照してください?

答えて

1

XPagedタグをComputed Fieldのvalueプロパティに埋め込むことはできません。 XPagesタグはコンパイラによってJavaオブジェクトに変換される必要がありますが、実行時には計算値が評価されます。

2つの方法が考えられます。リンクをHTMLリンクとして作成し、JSON RPCサービスhttp://www.notesin9.com/2014/05/21/tim-explains-json-rpc-codefortim/を呼び出します。これにより、ヘッダーファセット内のHTMLがベストプラクティスになります。

もう1つは、xp:textの代わりにファセットにxp:divを使用し、必要に応じてHTMLまたはXPagesコンポーネントを使用することです。 JSON RPCサービスに精通していない限り、これはおそらく簡単なオプションかもしれませんが、出力されるHTMLには影響します。

+0

ありがとうございました。私はちょうどヘッダーとフッターファセットを取り除くことによって問題を回避しました:) –

+0

注意深いダン - 私はファセットの事がうまくいくと思っていますが、それらをスキップして、

タグを無効にしたり、 –

+1

FYIでは、HTMLに影響を及ぼすxp:divを避けるために、xp:panel disableOutputTag = "true"を使用できます。これはコンテナdivなしでパネルの内容を出力します。 disableOutputTagプロパティは8.5.3で追加されました。 –

関連する問題