使用部分视图还是在javascript中生成HTML?
我有一个关于asp.NETMVC的项目 在某些情况下,当用户做某事时,html页面的一部分应该被更新。不应重新加载整个页面。例如,用户单击产品类别,应加载包含新产品的html标记 最佳实践是什么?使用部分视图和Ajax.ActionLink更新部分视图产品,或者使用$.Ajax接收产品信息,然后用javascript生成html标记使用部分视图还是在javascript中生成HTML?,javascript,asp.net-mvc,Javascript,Asp.net Mvc,我有一个关于asp.NETMVC的项目 在某些情况下,当用户做某事时,html页面的一部分应该被更新。不应重新加载整个页面。例如,用户单击产品类别,应加载包含新产品的html标记 最佳实践是什么?使用部分视图和Ajax.ActionLink更新部分视图产品,或者使用$.Ajax接收产品信息,然后用javascript生成html标记 或者最好的做法是其他的?这取决于您的需求。一般来说,正如您所说,有两种方法: 要么通过Ajax加载格式化的HTML,要么加载JSON,然后自己创建HTML。各有优缺
或者最好的做法是其他的?这取决于您的需求。一般来说,正如您所说,有两种方法: 要么通过Ajax加载格式化的HTML,要么加载JSON,然后自己创建HTML。各有优缺点: 加载HTML 优点:
- 您可以在服务器端执行生成,从而保持客户端代码干净
- 通过电线发送的数据包的大小会更大
- 请求仅针对该方法是非常特定的,并且很难重用
- 有效载荷尽可能小
- 因为您没有将它绑定到一个实现,所以可以将JSON用于其他目的(例如移动客户端)
- HTML的生成必须在客户端完成。如果您是手动或使用jQuery执行此操作,这可能会很麻烦,并且会增加客户端脚本。(一个解决方案是使用模板引擎,如moustache.js或handlebar.js)
- 渲染逻辑在服务器和客户端上,这意味着并非所有内容都在一个位置