我的Web应用程序在服务器端使用Smarty模板系统来生成内容。我的应用程序将使用大量的AJAX交互。我不是每次都在服务器端生成内容并将html数据发送到客户端,而是从服务器发送JSON,然后将数据与客户端的Smarty模板绑定。
这将非常有用,模板将在客户端缓存,然后我可以将其重用于每个AJAX交互,因为我只是从服务器发送JSON数据(而不是整个HTML) ,我可以节省很多实际下载的数据。
我知道胡子模板引擎可以做到这一点,因为它与语言无关,但是可以用Smarty做到吗?
我不想要的是在JS
中做这样的事情 for (var i in foo) {
html += '<div class = "myClass">foo[i].bar</div>';
}
Y.one('#myDiv').set('innerHTML', html);
相反,我想要的是在模板中使用div的这个模板,然后将数据分配给该模板
答案 0 :(得分:2)
PHP Smarty到JScript的端口 - http://code.google.com/p/jsmart/
它是免费的开源
有了它,您可以在PHP和JavaScript中使用现有的Smarty模板
答案 1 :(得分:0)
Smarty与PHP结合使用。由于PHP是服务器端语言,因此无法让Smarty缓存客户端。
为什么不直接使用占位符加载初始结构,然后对于每个JSON请求,只需替换HTML文件中的占位符?
答案 2 :(得分:0)
我不认为聪明可以,因为它是PHP特定的。但试试这个http://api.jquery.com/category/plugins/templates/这是微软对jquery项目的贡献