2016-09-13 9 views
0

jquery DataTables 1.10.0を使用して、テーブルにデータを表示します。これは私がデータをロードする方法である:djangoビューのデータを含むjqueryデータ型をリフレッシュ/再描画

var layer_data = $("#layer_data").DataTable({ 
    "scrollX": true, 
    "aaData":whole_array, 
    "iDisplayLength": 10 
}); 
whole_arrayのように、配列の配列である

私が欲しいもの
0:"<button id="1" class="btn btn-info btn-sm _edit_save_btn" style="margin-bottom:5px;width:68px; background-color:#a7a3a3;border-color:#a7a3a3">Edit</button></br><button id="fid__1" class="btn btn-info btn-sm _add_save_btn" data-toggle="modal" data-target="#add_geometry" data-fid="afghanistan_test.1" style="background-color:#a7a3a3; border-color:#a7a3a3;margin-bottom:5px;width:68px;">Geometry</button></br><button id="fid__cancel__1" class="btn btn-info btn-sm _cancel_btn" style="margin-bottom:5px;width:68px; background-color:#a7a3a3;border-color:#a7a3a3">Cancel</button>" 
1:"Afghanistan" 
2:"Badakhshan" 
3:... 

:各配列のように異なる値を持つ

[Array[7], Array[7], Array[7] 

ボタンのクリックでテーブルを再描画/更新することです。私はajax requestsでこれを行う方法がありますが、データがページロード時に初期化されるdjangoビューから来ているので、これは私のケースではないと思います。

+0

テーブルに(再)ajaxリクエストを作成してみませんか? – Sayse

+0

#データの一部はdjangoビューから取得し、その他の部分(htmlボタンなど)はjqueryを使用してビルドします。どのくらい正確にajaxを使用してテーブルを再投入しますか? – user1919

答えて

1

JSONReponseMixinのようなものを使用して、あなたのビューにデータを送信するだけです。

class MyView(JSONResponseMixin, AjaxResponseMixin , TemplateView):   
    def get_ajax(self, request, *args, **kwargs): 
     data = ['Country', 'Country'] 
     return self.render_response(json.dumps(data)) 

jquery ajax呼び出しから表示すると、データのみが返され、htmlが生成されます。

また、jsonを実行してビューにテーブルのみを含むhtmlを返し、ページ内のhtmlを置き換えることもできません。

関連する問題