0

PHP と JavaScript の両方で単一の smarty テンプレートを使用しようとしています。これはうまく機能しますが、JavaScript 側が要素 ID を想定し、PHP 側がファイル パスを想定している場合に、テンプレートで {include file=""} タグを使用する方法を理解しようとしています。

エレメント ID は、PHP 側で使用するパスと一致する必要がありますか?

4

2 に答える 2

0

OK、これを行う方法を考え出しました。ID でテンプレートを要求する jsmart の js プロトタイプ メソッドを上書きしました。

jSmart.prototype.getTemplate = function () {}; // Add your method here

そうすれば、渡されたパスとは異なる ID を持つテンプレート要素に ID をマッピングするなど、ID をどうするかを制御できます。

于 2013-10-27T16:04:22.100 に答える
0

この質問は古いように見えますが、Google経由でこの質問に出くわしたので、あなたの質問に答えたいと思います.

xyz.tpl - 含まれるテンプレート。

Hello {$name}

pqr.tpl - 親テンプレート。

There you see the message 
{include file='./xyz.tpl'}

Web ページの Javascript セクションで、次のように定義します。

jSmart.prototype.getTemplate = function (name) {
// Load template content here of template 'name' via ajax or DOM. Say here in the e.g. it would be './xyz.tpl'.
};

親テンプレートを呼び出すだけです

<script>
    var tplData = <content of pqr.tpl>; // You can load data in this via ajax or from DOM.
    var tplObj = new jSmart(tplData);
    var output = tplObj.fetch({'name': 'World'});
    alert(output);
</script>

ソース: - https://github.com/umakantp/jsmart/wiki/Include-Templates

于 2015-02-19T06:02:00.617 に答える