From 68827073b683032447135a11c0ddc20101cb1554 Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Wed, 29 Nov 2017 18:37:14 +0100 Subject: UI: manage row selection with datatables --- ishtar_common/templates/blocks/DataTables.html | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) (limited to 'ishtar_common/templates/blocks/DataTables.html') diff --git a/ishtar_common/templates/blocks/DataTables.html b/ishtar_common/templates/blocks/DataTables.html index 42b6eb8ad..38cd4f298 100644 --- a/ishtar_common/templates/blocks/DataTables.html +++ b/ishtar_common/templates/blocks/DataTables.html @@ -49,7 +49,7 @@
- @@ -146,6 +146,7 @@ jQuery(document).ready(function(){ "url": "{{source}}", "dataSrc": "rows" }, + "select": {% if multiple_select %}true{% else %}'single'{% endif %}, "columns": [ { "data": "id", "visible": false }, { "data": "link", "orderable": false },{% for col in extra_cols %} @@ -198,6 +199,8 @@ jQuery(document).ready(function(){ } } }); +{% endcomment %} + {% if multiple %} jQuery("#add_button_{{name}}").click(function (){ var mygrid = jQuery("#grid_{{name}}"); @@ -235,17 +238,22 @@ jQuery(document).ready(function(){ {% else %} jQuery("#submit_form").click(function (){ var mygrid = jQuery("#grid_{{name}}"); + + var data = datatable_{{sname}}.rows( { selected: true } ).data(); {% if multiple_select %} - jQuery("#hidden_{{name}}").val(mygrid.getGridParam('selarrrow')); + var value = ""; + for (k in data){ + if (k > 0) value += ","; + value += data[k]['id']; + } {% else %} - jQuery("#hidden_{{name}}").val(mygrid.getGridParam('selrow')); + var value = data[0]['id']; {% endif %} + jQuery("#hidden_{{name}}").val(value); return true; }); {% endif %} -{% endcomment %} - }); function get_next_table_id(c_id){ -- cgit v1.2.3