使用jquery进行模板化/部分化?

时间:2012-06-01 11:20:04

标签: javascript jquery

我想生成类似于facebook墙类型效果的内容,每次创建帖子时都会更新墙。我已经建立了我希望css / html如何用php看,但我现在想通过ajax来实现。

我的问题 - 他们这样的事情是jquery偏见吗?就像一个视图,我可以进入我的HTML页面。由于我的更新声明已经从

sel.prepend('<li id="'+response[i].post_id +'"> ' + response[i].title + '</li>');   

使用下面的html,更新页面需要更多时间

            出现后                              IMGS / t_silhouette.jpg“/&GT;                                      用户名                     标题&GT?;                                              img_url&GT;?“/&GT; * /&GT;                         img_url&GT;?“/&GT;                                                                   LINK&GT;“&GT; LINK_TITLE&GT;                         link_caption&GT?;                         消息&GT?;                                                                                    /imgs/cog.gif')no-repeat; margin-right:5px;“&gt;                         赞·评论·3月7日19:08通过APPNAME

1 个答案:

答案 0 :(得分:2)

您可以使用http://handlebarsjs.com/语法非常简单。你必须定义这样的模板

<script type="text/x-handlebars" id="people-template">
  <ul>
    {{#each people}}
        <li >Name: {{name}} : Location: {{location.city}}</li>
    {{/each}}
 </ul>
</script>

然后你可以像

一样使用它
 var context= {
   people: [
      { name: "John Doe", location: { city: "Chicago" } },
      { name: "Jane Sinha", location: { city: "New York"} },
      { name: "Name Test", location: { city: "LA"} }  
    ]
  };

var template = Handlebars.compile($("#people-template").text());
var html = template(context);
$(document.body).html(html);

Working Fiddle