再谈Struts2图片按钮标签的使用:图片根路径无法取得,使用传统方法

再谈Struts2图片按钮标签的使用:图片根路径无法取得,使用传统方法
在前几天写了一个图片按钮的使用方法如下   
                   <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中去了其它的照旧。 

你可能感兴趣的:(再谈Struts2图片按钮标签的使用:图片根路径无法取得,使用传统方法)