基本上我想做以下事情。
var myvar = '<s:property value="myMap['mapKey'].mapObjectValue" />'
但是失败了。我尝试过多种引号,但不能让它正常工作。任何想法?
我可以这样做:
var myVar = <s:property value="myMap['mapKey'].mapObjectValue" />;
但是javascript变量不是字符串,所以我不能根据需要使用它。
答案 0 :(得分:2)
如果您的第一次尝试失败,我猜测问题出在Javascript解析中。您可能希望尝试使用Apache Commons Lang来转义Javascript的字符串,例如:
var myvar = '<s:property value="@org.apache.commons.lang.StringEscapeUtils@escapeJavaScript(myMap['mapKey'].mapObjectValue)" />';
答案 1 :(得分:0)
它应该正常工作,因为标记将在Javascript被解释之前呈现。如果没有正确设置javascript值,可能
<s:property value="myMap['mapKey'].mapObjectValue" />
未返回正确的值。
正如@BalusC所说,没有必要在你的IDE上编译javascript。