我希望以下列方式使用JavaScript方法myJSFunction
:
<button onclick="myJSFunction('<s:property value="myJavaModel.myJavaMethod(<s:property value="myStuff"/>)" />')">Finalize</button>
JavaScript方法需要一个参数,该参数基于Javaclass的方法。可以调用不使用参数的方法。但是这个Java方法需要Struts2动作类的值。该值在此上下文中仍然可用,但是如何将此属性值作为Java方法中的参数传递。语法错误。
答案 0 :(得分:1)
你不能像那样嵌套标签,你也不需要。将评估<s:property>
标记value
属性中的所有内容。因此,如果您有myStuff
个访问者在运行,那么以下代码将起作用。
<button onclick="myJSFunction('<s:property value="myJavaModel.myJavaMethod(myStuff)" />')">Finalize</button>
答案 1 :(得分:-1)
您可以将myStuff
值存储在JSP页面中的隐藏参数中。
将此隐藏值传递给JS。
<input type="hidden" name="myStuffValue" value="<%=myModel.getMyMethodValue%>">
<input type="submit" onclick="play(<s:property value="myStuffValue"/>)">