Вызов функции JavaScript между строкой запроса URL - PullRequest
1 голос
/ 28 ноября 2010

Я пытаюсь вызвать одну функцию javascript между строкой запроса следующим образом, но она не работает ...... Кто-нибудь может указать, правильно ли я это делаю или нет? Мой мотив состоит в том, чтобы удалить специальные символы (# и т. Д.) Из одного из параметров (appName) в строке запроса ............ plz help !!

<a target="_self" onmouseout="hideTooltip()" onmouseover="showTooltip(event,'click on the name for additional details');return false" class="tip" href='<%=request.getContextPath()%>/index.jsp?page=myhome&type=details&appName=javascript:escape('<%=adMetricsVO.getApplicationName()%>')&Id=<%=bean.getID()%>'><%= bean.getName()%></a>

Ответы [ 2 ]

2 голосов
/ 28 ноября 2010

Это очень неправильно.(и невозможно сделать так, как вы пытаетесь)

Вы должны экранировать getApplicationName() на сервере.
Вам необходимо кодировать его по URL, затем кодировать его по атрибутам.

1 голос
/ 28 ноября 2010

Это не сработает, потому что интерпретатор Javascript не будет связан с обычным поведением щелчка элемента. Другими словами, Javascript никогда не будет видеть это значение "href".

Чтобы это работало, вы можете либо экранировать имя приложения на сервере, либо поместить URL-адрес в отдельный фрагмент Javascript, который вы подключаете к окну «load», или что-то в этом роде. *

В качестве альтернативы вы можете обработать «щелчок» обработчиком Javascript, который создает URL-адрес и перезагружает страницу.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...