1

かなり複雑な質問があります:)

サーバーからクライアントにjson形式でデータを送信したい。

そこで、データはこのデータからXHTMLを生成するためにjavascriptによって使用されます。

今、私はJSONからこのXHTMLを生成するのに役立つライブラリ/フレームワークを探しています。

たとえば、解決策は、名前でjavascriptメソッドにマップされる変数を含む特別なXHTML「テンプレート」ファイルを作成することです。このメソッドはJSON配列を受け取り、XHTMLの一部をJSON配列の変数で埋めます。

テンプレートファイルの例(擬似コード):

ファイル名:TemplateA.something

<html>
Hello my name is %VARIABLE1% !
</html>

そして、フレームワークは私を生成し、そのようなメソッド(擬似コード)を生成します:

generateXHTMLfromTemplate(templatename, data);

そしてそれはXHTMLを返します。

たとえば、私はそれをそのように呼びます(擬似コード):

container.html(generateXHTMLfromTemplate('TemplateA', '{"VARIABLE1" : "Earl"}'));

そのようなものは素晴らしいでしょう、最高はEclipseのこれらの「テンプレート」ファイルのコード補完です;)

4

2 に答える 2

1

私はおそらく忘却に反対票を投じられるでしょうが、非常に単純な代替案を提示します。

非常に単純な機能が必要な場合は、非常に単純なプラグインを として使用できます$.fn.loadtemplate。これは、私の以前のプラグインを変更したものです$.fn.simpletemplate

$.fn.loadtemplate = function(resource, variables) {
    return this.each(function() {
        var $self = $(this);
        $.ajax({
            url: resource,
            dataType: "html",
            success: function(html) {
                html = html.replace(/{{(.+)}}/g, function(match, variable) {
                    return variables[variable];
                });
                $self.html(html);
            }
        });
    });
};

すべての{{variable}}トークンは、関数に渡された特定のオブジェクトの適切なプロパティに置き換えられます。

<!-- template.tpl -->
<h1>Hello my name is {{name}}!</h1>

$("#selector").loadtemplate("template.tpl", {
  name: "World"
});​

ここにフィドルの例があります。

于 2012-12-29T15:31:44.487 に答える
0

投稿のコメントから取得:

このようなもの?github.com/janl/mustache.js – 昨日の Blender

 

その他の選択肢: doTHandlebarsUnderscore。– 昨日とがった

于 2012-12-31T15:08:14.350 に答える