8

使用することで

<script type="text/template" id="templateid">
<!-- Template content goes here -->
</script>

コードはうまく機能します。

ただし、テンプレートを次のような外部ファイルとして配置すると

<script type="text/template" id="templateid" src="template.js"></script>

これはうまくいきません。

上記の 2 つの方法の違いは何ですか? また、この問題を回避するにはどうすればよいですか? それとも、ここで明らかな何かが欠けていますか?

4

2 に答える 2

10

さまざまな例のようなものを使用してテンプレート テキストを取得しようとしている$("#templateid").html()だけの場合、これはテキストが実際に<script>タグ内でインライン化されている場合にのみ機能します。

<script>通常、タグを使用してリモート ファイルの内容を取得することはできません。

外部テンプレートをロードする場合は、コードを使用してコンテンツを明示的に取得する必要があります (たとえば、$.get()テキスト プラグインで JQuery または require.js を使用します)。

バックボーンのコンテキストで外部テンプレートを取得する方法の詳細は次のとおりです。

ただし、注意してください。このソリューションを使いすぎると、テンプレートを取得するための追加のリクエストが大量に発生し、結果としてアプリケーションの動作がかなり遅くなります。<script>一般に、テンプレートを通常の方法 (タグ内にインライン) で埋め込む方がパフォーマンスが向上します。

于 2013-06-26T09:37:36.030 に答える