2016-12-08 4 views
1

[CDATA]タグ内にあるhtmlアンカーとターゲットタグを処理する必要があります。私のfreemarkerのバージョンは2.3.18です。ftl(freemarker)のCDATAタグ内で指定されたhtmlアンカータグの扱い方

freemarkerエスケープまたはエスケープタグを使用してこれを処理する方法を教えてください。エスケープタグを追加しようとすると、値がftlに達していません。私が間違っているかどうかは分かりません。 {X} $のための

<#assign cDataStart="<![CDATA["> 
    <#assign cDataEnd="]]>"> 
    <tr class="planHeading"> 
    <#assign xlist = plan.column> // plan.column is list of strings 
     <#list xlist as x> 
     <h2 id="planMed"> 
      ${cDataStart}${x?replace("<br>", cDataEnd+"<br />"+cDataStart)}${cDataEnd} // x consist "You pay INR 0.00 <br>**For more information regarding, please click <a href=https://www.example.com/a.pdf target=_blank>here</a>." 
     </h2> 
     </#list> 
    </tr> 

予想される出力:

"You pay INR 0.00 <br>**For more information regarding, please click here" 

電流出力:

"You pay INR 0.00 <br>**For more information regarding, please click <a href=https://www.example.com/a.pdf target=_blank>here</a>" 

答えて

0

使用${x?no_esc}

代わりに、あなたは最初の行に

<#ftl autoesc=false> 

を追加し、自動エスケープテンプレート全体のためにオフにすることができます。

詳細はhttp://freemarker.org/docs/dgui_misc_autoescaping.htmlを参照してください。

+0

$ {x?no_esc}を追加すると、その値はftlに達しておらず、打撃例外になります。問題はちょっと違って、少し遅れていると理解されています。私はそれに応じて質問と説明を変更しました。お知らせ下さい。 – RVR

関連する問題