1

我有一个相当复杂的问题:)

我想以 json 的形式从服务器向客户端发送数据。

javascript 将使用该数据从该数据生成 XHTML。

现在我正在寻找一个库/框架来帮助我从 JSON 生成这个 XHTML。

例如,一种解决方案可能是使用包含变量的特殊 XHTML“模板”文件,这些变量按名称映射到 javascript 方法,并且该方法采用 JSON 数组并用 JSON 数组中的变量填充 XHTML 的某些部分。

示例模板文件(伪代码):

文件名:TemplateA.something

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

然后框架为我生成了一个类似的方法(伪代码):

generateXHTMLfromTemplate(templatename, data);

它会返回 XHTML。

例如,我会这样称呼它(伪代码):

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

像这样的东西会很棒,最好的办法是在 eclipse 中完成这些“模板”文件的代码;)

4

2 回答 2

1

尽管我可能会被遗忘,但我会提出一个非常简单的替代方案。

如果您需要一个非常简单的功能,那么您可以使用一个非常简单的插件 as $.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"
});​

一个例子小提琴here。

于 2012-12-29T15:31:44.487 回答
0

摘自帖子的评论:

像这样的东西?github.com/janl/mustache.js – 昨天的搅拌机

 

其他可供选择:doTHandlebarsUnderscore。– 昨天尖尖的

于 2012-12-31T15:08:14.350 回答