在前几天写了一个图片按钮的使用方法如下
<s:submit type="image" value="user_doDelete.action" label="删除指定用户"
src="myroot/images/btn/btn_delete.jpg" cssClass="button_image"
onclick="return CheckSelectForDelete();" action="user" method="doDelete"/></td>
在这里面的src有个问题就是必须带着项目的root,如上例中的myroot,一旦项目的访问路径变了,就麻烦了,显示不出图片来了,传统的方法是加<%=request.getContextPath()%>,但是在Struts2标签中不能这么引用。
在2.0.11的时候还可以用
${pageContext.request.contextPath},但是必须使用theme=ajax,我还不想用,
在2.1.2的时候ajax从标准标签库中分出去了,想用也不行了。
现在只能不用Submit标签了,但是还想用它的一些功能,主要就是那个action,method了,通过分析生成的代码总结新的方法如下:
<input type="image" alt="删除指定用户"
src="<%=request.getContextPath() %>/images/btn/btn_del.gif"
id="doDelete" name="action:user!doDelete"
class="button_image" onclick="return CheckSelectForDelete();"/>
无他,就是把标签中的action和method合并起来,加到name中去了其它的照旧。