您的位置:首页 > 编程语言 > Java开发

Struts2中Button标签页面跳转(按钮标签+超链接标签)加传值到Action

2014-04-07 23:03 453 查看
写了好几天的项目中今天终于大功告成了。其实还有好多页面验证没弄嘿、

来说下今天遇到的问题吧。

由于我的页面大多数的标签都是用OGNL表达式写的,所以也就想统一的一直写下去,就不换EL表达式啥的。

开始以为button中的跳转地址跟超链接中的一样,就试呀试呀的,试了好多遍...最后还是妥协了,看来不是我写的有误,昨天一直用的是超链接,咋今天就失灵了呢。题设里要求是按钮传值,我也不好意思把人家换成点击超链接跳转+传值、

先来看看超链接的方式吧:

<!-- 对应邮件信息的id值,查询具体邮件的内容呢 并设置邮件的属性为已读-->

<s:url action="conTent" id="url">

<s:param name="id1" ><s:property value="#list.id"/></s:param> //点击需要传递的id值,这里也是集合中取出

</s:url>

<s:a href="%{url}">

<s:property value="#list.etitle"/> //遍历得出集合中的信息名

</s:a>

上边这段写的比较复杂,但很清楚呦,其实可以简单的这样来写:

<s:a href="conTent?id1=%{#list.id}"> //这样好多了吧。

而按照上边的href=" "写在Button标签中是不行的,可以跳转,但传不过值去,一直都报空指针异常、按这样的话貌似是我没用对传值符号啦,试了几个没通,我就另辟蹊径吧。

在某个网友的点拨下,终于达到想要的效果了,Happy呀!!! 就是用带<s:标签的链接,用到button标签的样式,哈哈挺绝吧。为了以后的同志少走弯路我贴给大家,

<s:a href="Yes?id1=%{#request.atte.id}"><input type="button" value="审核通过"/></s:a>

<s:a href="No?id2=%{#request.atte.id}"><input type="button" value="审核不通过"/></s:a>

应该是比较好懂吧,Yes 和 No 是跳转至Struts2中的<action name="Yes" 去执行方法 此处是传递id值查出对应对象改变其属性值。

好了,就说这些吧,希望对大家有帮助

发现了个问题,就是这个操作在IE浏览器上用不了(我用的是IE10),之前测试时用的是Chrome浏览器、(注意呦!)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: