diff --git a/apps/assets/templates/assets/admin_user_list.html b/apps/assets/templates/assets/admin_user_list.html index 25ee56fba..c590beb33 100644 --- a/apps/assets/templates/assets/admin_user_list.html +++ b/apps/assets/templates/assets/admin_user_list.html @@ -44,9 +44,10 @@ $(document).ready(function(){ var options = { ele: $('#admin_user_list_table'), columnDefs: [ - {targets: 1, createdCell: function (td, cellData, rowData) { + {targets: 1, render: function (cellData, tp, rowData, meta) { + cellData = htmlEscape(cellData); var detail_btn = '' + cellData + ''; - $(td).html(detail_btn.replace('{{ DEFAULT_PK }}', rowData.id)); + return detail_btn.replace('{{ DEFAULT_PK }}', rowData.id); }}, {targets: 4, createdCell: function (td, cellData) { var innerHtml = ""; @@ -82,7 +83,6 @@ $(document).ready(function(){ innerHtml = "" + num.toFixed(1) + "% "; } $(td).html('' + innerHtml + ''); - }}, {targets: 8, createdCell: function (td, cellData, rowData) { var update_btn = '{% trans "Update" %}'.replace('{{ DEFAULT_PK }}', cellData); @@ -90,8 +90,8 @@ $(document).ready(function(){ $(td).html(update_btn + del_btn) }}], ajax_url: '{% url "api-assets:admin-user-list" %}', - columns: [{data: function(){return ""}}, {data: "name" }, {data: "username" }, {data: "assets_amount" }, - {data: "reachable_amount"}, {data: "unreachable_amount"}, {data: "id"}, {data: "comment" }, {data: "id" }] + columns: [{data: function(){return ""}}, {data: "name"}, {data: "username" }, {data: "assets_amount" }, + {data: "reachable_amount"}, {data: "unreachable_amount"}, {data: "id"}, {data: "comment", render: $.fn.dataTable.render.text()}, {data: "id" }] }; jumpserver.initServerSideDataTable(options) }) diff --git a/apps/static/js/jumpserver.js b/apps/static/js/jumpserver.js index 8740a6508..50f78187c 100644 --- a/apps/static/js/jumpserver.js +++ b/apps/static/js/jumpserver.js @@ -538,7 +538,11 @@ jumpserver.initServerSideDataTable = function (options) { $(td).html(''.replace('99991937', cellData)); } }, - {className: 'text-center', targets: '_all'} + { + targets: '_all', + className: 'text-center', + render: $.fn.dataTable.render.text() + } ]; columnDefs = options.columnDefs ? options.columnDefs.concat(columnDefs) : columnDefs; var select = { @@ -945,4 +949,11 @@ function rootNodeAddDom(ztree, callback) { ztree.destroy(); callback() }) +} + + +function htmlEscape ( d ) { + return typeof d === 'string' ? + d.replace(//g, '>').replace(/"/g, '"') : + d; } \ No newline at end of file diff --git a/apps/templates/_base_list.html b/apps/templates/_base_list.html index 191ba8151..c5314af4e 100644 --- a/apps/templates/_base_list.html +++ b/apps/templates/_base_list.html @@ -2,10 +2,8 @@ {% load static %} {% load i18n %} {% block custom_head_css_js %} - - {% endblock %} {% block content %}