たとえば、テーブル、値がある場合はリストを更新する必要があります。新しい値を挿入し、ページ全体をリロードして、テーブルまたはリストの値を再度表示することができます。
Ajax の更新を試す場合は、DOM を操作して新しいタグを作成し、連結して古い HTML に新しい HTML を挿入する必要があります。これは面倒な方法ではありません。新しいエントリを表示するには、以前に作成したコードを再入力する必要さえあります。
例: これは架空の例であり、私の言いたいことを示しています。
$.ajax({
url: '/post/addComment/',
type: 'POST',
data: 'comment=' + comment,
beforeSend : function() {
//waiting message
$('#some_information_div').html('<strong>Updating...</strong>');
}
}).done(function(data) {
//new data comes here (by JSON, plain text, whatever...)
if (data.status == 'OK') {
//OHHH MAN WE HAVE TO POPULATE MANUALLY IT AGAIN
var c = '';
c = '<table>'
data.content.forEach(function(e) {
c += '<tr><td>' + e.name + '</td></tr>';
});
c += '</table>'
//update with new values
$('#some_information_div').html('');
$('#destination_table').html(c);
}
});
残念ながら、リストとテーブルを常に処理する必要があり、どういうわけかコードを再入力して、JavaScript ですべてを操作する必要があります。jQuery.load()のように、何かが役立つ可能性があることがわかりました。おそらく、私が望むものに適合する可能性がありますが、試していません。
JSF などの他の言語やフレームワークでは、「レンダリング手法」を使用して簡単に行うことができます。DOM を手動で作成および操作することなく、コンテンツを直接更新できます。
どんな種類の提案でも、このアプローチの手がかりは非常に役に立ちます。
PS: コード サンプル タグはここではうまく機能しません。