我试图从 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>