Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/406.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在ajax请求后追加html_Javascript_Jquery_Html_Ajax_Django - Fatal编程技术网

Javascript 在ajax请求后追加html

Javascript 在ajax请求后追加html,javascript,jquery,html,ajax,django,Javascript,Jquery,Html,Ajax,Django,我正在通过AJAX调用向一个线程发布一条评论 它将请求发送到服务器。如何将新注释附加到其他注释 我想大概是这样 .done(function () { ...().after(html); }); 注释的样式有点复杂,所以仅仅在div中添加一些文本是不够的。这通常是怎么做的 我正在使用jQuery和Django。html应该由服务器端使用Django模板生成,还是仅由客户端使用jquery(可能是jquery模板系统)生成 Facebook这样的网站是如何做到这一点的?是通过在成功发布

我正在通过AJAX调用向一个线程发布一条评论

它将请求发送到服务器。如何将新注释附加到其他注释

我想大概是这样

.done(function () {
    ...().after(html);
});
注释的样式有点复杂,所以仅仅在div中添加一些文本是不够的。这通常是怎么做的

我正在使用jQuery和Django。html应该由服务器端使用Django模板生成,还是仅由客户端使用jquery(可能是jquery模板系统)生成

Facebook这样的网站是如何做到这一点的?是通过在成功发布时添加html,还是以一定间隔刷新页面并更新整个页面?

您有两种方法: -您的web服务器返回一个JS代码,该代码将HTML添加到您的视图中,这可能更易于编码,因为您可以使用python代码。 -您的web服务器只返回数据,您必须手动创建HTML,我不喜欢这样,因为您必须重新创建HTML,并且如果您的注释的HTML代码发生更改,您必须维护2个代码


我建议您生成HTML服务器端。

您可以用类添加一个div,然后用新注释填充这个div。 差不多

$('.div_comment').last().append('<div class="comment">' + newComment + '</div>');
$('.div_comment').last().append(''+newComment+'');

如果在将新评论加载到网页后,您的.css出现问题,请查看此链接,它对我有很大帮助: 对于内容的加载,我只推荐
$(“#组件”).append(html)
,尽管我不得不说,在直接设置为html时要小心,因为您可能会遇到功能问题,比如单击等。
查看backbone.js动态添加内容的功能

只需使用,单击链接即可查看

页面刷新不再常见。可以返回json并使用客户端逻辑解析到DOM或返回html…选择权在您