diff --git a/frappe/public/js/frappe/router.js b/frappe/public/js/frappe/router.js index e79080cb3b..59bad0655d 100644 --- a/frappe/public/js/frappe/router.js +++ b/frappe/public/js/frappe/router.js @@ -77,8 +77,15 @@ frappe.get_route = function(route) { // for app route = frappe.get_raw_route_str(route).split('/'); route = $.map(route, frappe._decode_str); - var parts = route[route.length - 1].split("?"); - route[route.length - 1] = parts[0]; + var parts = null; + var doc_name = route[route.length - 1]; + // if the last part contains ? then check if it is valid query string + if(doc_name.indexOf("?") < doc_name.indexOf("=")){ + parts = doc_name.split("?"); + route[route.length - 1] = parts[0]; + } else { + parts = doc_name; + } if (parts.length > 1) { var query_params = frappe.utils.get_query_params(parts[1]); frappe.route_options = $.extend(frappe.route_options || {}, query_params);