我試圖從內部的Struts調用JS功能:Struts的未結束的字符串常量錯誤調用JS功能
<s:iterator value="%{foo}" status="stat">
<a id="idname" href="#" onClick="javascript:getValue('<s:property value="news"/>'); return false;"><s:property value="newsName" /></a>
</s:iterator>
當我這樣做,我得到一個未終止字符串常量錯誤。然而,當我使用我有逃脫的值:
當我用「新聞」變量的字面意義:
<s:iterator value="%{foo}" status="stat">
<a id="idname" href="#" onClick="javascript:getValue('http://www.cnn.com/2013/01/10/travel/flight-movie-united-232/index.html?iref=obnetwork');return false;">
<s:property value="newsName" /></a>
</s:iterator>
沒有這樣的錯誤被拋出。
的價值:
<s:property value="news"/>
是字符串:
http://www.cnn.com/2013/01/10/travel/flight-movie-united-232/index.html?iref=obnetwork
我已經將其輸出到頁面選中此。
而且,不,我不必逃避財產本身;這個工程:
<a id="idname" href="#" onClick="javascript:getValue('http://www.blah.com/<s:property value="otherValue"/>');return false;"><s:property value="userName" /></a>
我沒有得到這個錯誤與新聞價值,你提供;您可能需要提供更多信息。你確定這是導致錯誤的特定項目嗎?國際海事組織你應該總是JS逃脫任何你想用作JS字符串。 –
Dave-我提供的值*是*一個JS轉義字符串。這是一個帶有/的網址,而不是\ – user1969787
我明白了具體的例子。我也不知道它是如何產生/等,所以*我*不知道它的適用性。我說的是,鑑於你提供的例子,我沒有得到錯誤。 –