我有下面的ajax调用。
jQuery.post('index.php',{
'option' : 'com_one',
'controller': 'product',
'task' : 'loadColors',
'format' : 'raw',
'design_id' : design_id,
'collar_id' : collar_id
}).success(function(result) {
jQuery('div#color_wrapper').html(result);
}).error(function() {
jQuery('div#color_wrapper').html('<h1>ERROR WHILE LOADING COLORS</h1>');
});
方法1
它返回大量的HTML。然后这些被分配给
div#color_wrapper
。我在这里做的是echo
在model.php中需要的所有HTML。方法2
我刚刚知道,我可以将数据作为JSON对象获取,并使用JavaScript模板在页面内呈现它们。(handlebarsjs)。
据我所知,这是客户端处理(方法2)与服务器端处理(方法1)。
我的问题是哪种方法更快?哪种方法是行业标准?这两种方法有什么利弊吗?我应该用什么方法?为什么?
谢谢
最佳答案
我认为JSON方法更好,因为对于连续的请求,要传输的数据更少。
如果你真的那么在意表现,你应该precompile your templates。
此外,如果您预编译模板,甚至不必向客户机发送handlebars.js
。你可以发送一个更小的handlebars.runtime.js
到浏览器,进一步减少加载时间!