2012-03-28 3 views
0

я устанавливаю переменную JavaScript для текста из набора ресурсов:побег текста для JavaScript из пакета ресурсов

var errorMessage = '<s:text name='base.error'/>'; 

Это работает правильно, насколько текст в комплекте ресурсов не содержит quote (').
Знаете ли вы, как я могу кодировать текст для javascript? Я не контролирую тексты в наборе ресурсов, поэтому их изменение не является вариантом.
Я думал, что могу использовать метод escapeJavaScript в com.opensymphony.xwork2.util.TextUtils, но я не могу заставить его работать в jsp.
Благодаря

+0

вам нужно, чтобы исправить это в самом ресурсов пачке например use '' as \ '' ', и он должен работать, альтернативный - считывать значения в классе действий и использовать тег' ', который имеет атрибут escape –

ответ

0
<s:property value="getText('base.error')" escapeJavaScript="true" /> 
+0

, даже если struts анализирует' getText ('base.error') ' , он будет искать фасоль, как 'parsedValue' – tusar

0

Используя двойные кавычки (") не приведет к тому, JavaScript ломаться, когда ресурс-значение содержит одиночные кавычки (').

var errorMessage = "<s:text name='base.error'/>"; 
Смежные вопросы