diff --git a/web/pgadmin/tools/datagrid/__init__.py b/web/pgadmin/tools/datagrid/__init__.py index f1a0aa162..78c1ee734 100644 --- a/web/pgadmin/tools/datagrid/__init__.py +++ b/web/pgadmin/tools/datagrid/__init__.py @@ -134,7 +134,7 @@ def initialize_datagrid(cmd_type, obj_type, sid, did, obj_id): return make_json_response(data={'gridTransId': trans_id}) -@blueprint.route('/panel///', methods=["GET"]) +@blueprint.route('/panel///', methods=["GET"]) def panel(trans_id, is_query_tool, editor_title): """ This method calls index.html to render the data grid. diff --git a/web/pgadmin/tools/datagrid/templates/datagrid/js/datagrid.js b/web/pgadmin/tools/datagrid/templates/datagrid/js/datagrid.js index 5062443ee..f0ffb444e 100644 --- a/web/pgadmin/tools/datagrid/templates/datagrid/js/datagrid.js +++ b/web/pgadmin/tools/datagrid/templates/datagrid/js/datagrid.js @@ -323,7 +323,8 @@ define( }); // Open the panel if frame is initialized - baseUrl = "{{ url_for('datagrid.index') }}" + "panel/" + res.data.gridTransId + "/false/" + grid_title; + baseUrl = "{{ url_for('datagrid.index') }}" + "panel/" + res.data.gridTransId + "/false/" + + encodeURIComponent(grid_title); var openDataGridURL = function(j) { setTimeout(function() { var frameInitialized = j.data('frameInitialized'); @@ -419,7 +420,7 @@ define( // Open the panel if frame is initialized baseUrl = "{{ url_for('datagrid.index') }}" + "panel/" + res.data.gridTransId + "/true/" - + grid_title + '?' + "query_url=" + encodeURI(sURL); + + encodeURIComponent(grid_title) + '?' + "query_url=" + encodeURI(sURL); var openQueryToolURL = function(j) { setTimeout(function() { var frameInitialized = j.data('frameInitialized');