有的时候咱们须要ajax中更新比较多的HTML内容,假如这些内容使用js进行拼接的话,将会很是痛苦。
我找到了两个方案
1.经过JsRender的方式
2.后端渲染这些局部的模板内容,发送到前端,前端更新前端html
html
这里我使用的方法2.前端
具体操做以下:ajax
1.模板中须要更新的局部内容,单独抽离出一个html.例如:fragment.htmldjango
2.在py的view中,组织fragment.html所需展示的数据,使用使用 render_to_string 轻松地将须要渲染的fragment.html渲染成一个字符串。json
from django.template.loader import render_to_string html = render_to_string('fragment.html', {'data': data_json}) result = {'status': 1, 'msg': '','html': html} return self.render_json_response(result)
3.将此字符串发送到客户端后端
4.客户端ajax中收到数据返回,使用以下方法将view端生成的html字符串插入到页面中code
$('#fragment').html(arg.html)