В моем коде я пытаюсь получить значение, которое устанавливается с помощью modelAttribute в контроллере Spring, а затем передать его в функцию Javascript и установить значение в качестве параметра в URL.
Модель атрибута с контроллера:
model.addAttribute ( "APPNAME", APPNAME);
model.addAttribute ("cloverAppType", cloverAppType);
JavaScript в виде:
<a data-toggle="tab" onclick="loadOrders()">Orders</a>
function loadOrders() {
var message = "${appName}".replace(/'/g, "%27");
var x = encodeURIComponent(message);
window.location = '/admin/business/${businessId}/order?cloverAppType=${cloverAppType}&appName='+x;
}
Проблема в том, что * * * * * * * * '
включено в appName, это нарушает JavaScript и дает Uncaught SyntaxError: Unexpected identifier
.
и Uncaught ReferenceError: loadOrders is not defined at HTMLAnchorElement.onclick
ошибки в консоли браузера.
Но если я жестко закодирую значение Poppo's Taqueria - Outpost
, оно заменяется и кодируется.
Как можно избежать этого и передать значение appName с символом '
в качестве параметра URL?