2014-11-05 76 views
0

我正在向AJAX調用的線程發佈評論。在ajax請求後附加html

它將請求發送到服務器,因爲它應該。我怎樣才能將新評論添加到其他評論?

我想這會是這樣的

.done(function() { 
    ...().after(html); 
}); 

評論的風格是有點複雜,所以這是不夠的,只是附加一些文字股利。這通常如何完成?

我正在使用jQuery和Django。應該使用Django模板在服務器端生成html,還是使用jquery(也許是jQuery模板系統)在客戶端生成?

這是如何在Facebook上完成的?它是通過在發佈成功後附加html還是頁面以間隔刷新並更新整個頁面?

+0

頁面刷新不再常見。可以返回json並使用客戶端邏輯來解析DOM或返回html ....選擇是你的 – charlietfl 2014-11-05 23:09:35

回答

0

您有兩種方法: - 您的Web服務器返回一個將HTML添加到您的視圖中的JS代碼,因爲您可以使用Python代碼,所以代碼更加簡單。 - 你的網絡服務器只是返回數據,你必須手動創建HTML,我不喜歡這個,因爲你必須重新創建HTML,如果你的註釋的HTML代碼改變了,你將不得不維護2個代碼。

我會建議你生成HTML服務器端。

0

你可以用一個類添加一個div,而不是用你的新評論填充這個div。 像

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

如果您正在加載到您的網頁新的評論後,有您的的CSS麻煩,看看這個鏈接,這對我幫助很大: Updating components/css 和的負載內容我只想建議$("#component").append(html)雖然我不得不說,直接進入設置HTML時要小心,因爲你可能有功能的煩惱,就像單擊等 在Backbone.js的看看動態地添加內容

0

簡單隻需使用.append,點擊鏈接自己查看