0

テンプレート内のテキストエリアで構成されるテンプレートがあります。IE、Firefox ブラウザーでは問題なく動作しますが、Chrome では動作しません。テンプレート内のテキストエリアを削除すると、Chrome でも機能します。誰でも私を助けることができますか?

4

3 に答える 3

1

まったく同じ問題が Firefox 4 でも発生します。

解決策は、外部ファイルからテンプレートをロードすることです。

var template =  jQuery.createTemplateURL("/path/test_tmpl.txt");
$("#result").setTemplate(template);
$("#result").processTemplate(data);

test_tmpl.txt 例

<table>
    {#foreach $T.users as row}
    <tr>
            <td><textarea>{$T.row.id}</textarea></td>
            <td>{$T.row.name}</td>
            <td>{$T.row.age}</td>
    </tr>
    {#/for}
</table>

jTemplates 0.7.8、jQ 1.4.2でテスト済み

于 2011-04-19T08:58:12.740 に答える
0

同じ問題に遭遇しました。現在の解決策 (JTemplate changelog にあります) は、CDATA の方法を使用してテンプレートのスタイルを設定することです。

<p style="display: none">
<textarea id="template" rows="0" cols="0">**<![CDATA[**
  <form ...>
  ...
    <textarea rows="4" cols="20" name="name">{$T.Description}</textarea>
    <input type="submit" value="Save" />
  </form>
]]></textarea>
</p>
于 2011-06-13T12:53:16.963 に答える
0

この問題の回避策を見つけました。次の構造で、jtemplate のテキストエリア タグを「エスケープ」することができます。

<{"textarea"} rows="4" cols="20">{$T.Description}<{"/textarea"}>
于 2014-04-18T16:07:51.550 に答える