2012-03-28 66 views
0

我是一個JavaScript變量從資源包設置爲文本:逃離資源包的JavaScript文本

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

此工作正常,只要在資源包中的文本不包含報價(')字符。
你知道我該如何編碼JavaScript的文本?我無法控制資源包中的文本,因此更改它們不是一種選擇。
我在想我可以在com.opensymphony.xwork2.util.TextUtils中使用escapeJavaScript這個方法,但是我不能讓它在jsp中工作。
感謝

+0

你需要修復它在資源包本身像使用''作爲'''並且它應該工作,替代方法是讀取操作類中的值並使用''標籤,它具有轉義屬性 – 2012-03-28 15:04:35

回答

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

是嗎?即使struts解析getText('base.error')' ,它會查找像'parsedValue'這樣的bean – tusar 2012-03-28 15:17:58

0

使用雙引號(「)將不會導致你的JavaScript來打破,當資源值包含單引號(')。

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