我正在寻找一个模板引擎使用客户端。我一直在尝试一些像jsRepeater和jQuery模板。虽然它们在FireFox中运行正常,但在IE7中呈现HTML表格时似乎都崩溃了。
我还查看了MicrosoftAjaxTemplates.js(来自http://www.codeplex.com/aspnet/Release/ProjectReleases.aspx?ReleaseId=16766),但结果发现它也有同样的问题。
对使用其他模板引擎有什么建议吗?
我正在寻找一个模板引擎使用客户端。我一直在尝试一些像jsRepeater和jQuery模板。虽然它们在FireFox中运行正常,但在IE7中呈现HTML表格时似乎都崩溃了。
我还查看了MicrosoftAjaxTemplates.js(来自http://www.codeplex.com/aspnet/Release/ProjectReleases.aspx?ReleaseId=16766),但结果发现它也有同样的问题。
对使用其他模板引擎有什么建议吗?
当前回答
这不是特定于jsquery的,但这里有一个由谷歌发布的开源的基于js的模板库:
http://code.google.com/p/google-jstemplate/
这允许使用DOM元素作为模板,并且是可重入的(即模板呈现的输出仍然是一个模板,可以使用不同的数据模型重新呈现)。
其他回答
只能做个傻瓜^^
// LighTest TPL
$.tpl = function(tpl, val) {
for (var p in val)
tpl = tpl.replace(new RegExp('({'+p+'})', 'g'), val[p] || '');
return tpl;
};
// Routine...
var dataObj = [{id:1, title:'toto'}, {id:2, title:'tutu'}],
tplHtml = '<div>N°{id} - {title}</div>',
newHtml = '';
$.each(dataObj, function(i, val) {
newHtml += $.tpl(tplHtml, val);
});
var $newHtml = $(newHtml).appendTo('body');
http://jsfiddle.net/molokoloco/w8xSx/。)
查看Rick Strahl的帖子jQuery客户端模板。他探讨了jTemplates,但随后更好地说明了John Resig的微模板解决方案,甚至对其进行了一些改进。很好的对比,大量的样本。
这不是特定于jsquery的,但这里有一个由谷歌发布的开源的基于js的模板库:
http://code.google.com/p/google-jstemplate/
这允许使用DOM元素作为模板,并且是可重入的(即模板呈现的输出仍然是一个模板,可以使用不同的数据模型重新呈现)。
jQuery Nano:
模板引擎 基本用法 假设你有以下JSON响应: 数据= { 用户:{ 登录:“tomek”, first_name:“托马斯”, last_name:“Mazur”, 账户:{ 状态:“活跃”, expires_at:“2009-12-31” } } } 你可以做: 纳米(“< p >你好{用户。first_name} {user.last_name} !您的帐户是<strong>{user.account。地位}< /强> < / p > ",数据) 你准备好字符串: 你好Thomas Mazur!您的帐户是<strong>active</strong></p> 测试页面…
不确定它如何处理您的特定问题,但还有PURE模板引擎。