struts2路径跳转

现在的home.jsp主页面是两个部分,左边是树状的连接名,就是点击树节点右边就显示相对应的页面d=newdTree('d');d.add(0,-1,'系统菜单树');d... 现在的home.jsp主页面是两个部分,左边是树状的连接名,就是点击树节点右边就显示相对应的页面

d = new dTree('d');
d.add(0,-1,'系统菜单树');
d.add(2,0,'员工管理','${pageContext.request.contextPath}/login/welcome.jsp','','mainFrame');
//子目录添加
d.add(5,2,'用户管理','${pageContext.request.contextPath}/user/list.jsp','','mainFrame');
document.write(d);

这是左边的树

<frameset rows="103,*,43" frameborder=0 border="0" framespacing="0">
<frame src="${pageContext.request.contextPath}/login/left.jsp" name="leftFrame" noresize scrolling="YES">
<frame src="${pageContext.request.contextPath}/login/welcome.jsp" name="mainFrame">
</frameset>
</frameset>

这是主页面,树在左边 ,小页面在右边

现在的问题是,比如点击用户管理的页面,会显示出所有的用户,但是单单跳转页面怎么启动struts的action
在右边显示用户列表呢?

还有在右边的页面做struts的增删改查的操作时,在struts的xml里怎么写<result>的跳转路径
即可以显示home.jsp ,右边的页面又可以显示相对应的struts操作后的跳转页面
展开
 我来答
mikemelon2012
推荐于2016-10-22 · TA获得超过3633个赞
知道大有可为答主
回答量:938
采纳率:87%
帮助的人:389万
展开全部

不难,主要你要理解<frame>标签的name属性和target属性的用法,以及Struts 2 action的处理过程。


你的第一个问题:点击用户管理的页面,会显示出所有的用户,但是单单跳转页面怎么启动struts的action在右边显示用户列表呢?

回答:其实直接跳转显示用户列表jsp,和调用Struts2的action之间差了一步,就是从数据库里取出用户数据,这需要在Struts2的action里调用,因此你需要这时把“用户管理”对应的URL换成Struts 2的action(假设是UserAction)对应的URL,这样你点击“用户列表”的链接后,UserAction会先处理(取出用户数据),最后通过return "success",把success视图(也可能是别的视图)设置为你要显示的用户列表JSP。  

为了在右边显示,这里点击“用户管理”时,还要求把目标(target)设成你要显示所在的<frame>的name,也就是结果页面会在target属性设置的框架里显示,这是对于<form>和<a>这两个标签来说的。如果要是对<frame>标签来说,直接用其名字设置其location属性也可以达到效果。

我看你原来的代码好像已经用JavaScript实现了,就是这句:

d.add(5,2,'用户管理','${pageContext.request.contextPath}/user/list.jsp','','mainFrame');

里面的“mainFrame"。(当然我不清楚你的这个js代码具体实现,总之最终需要设置右边页面里刷出来UserAction对应的URL,直接用原生js代码如下:

window.top.mainFrame.location.href="你的UserAction对应的URL";


如果第一个问题理解并搞定,第二个问题也就不难:

在右边的页面做struts的增删改查的操作时,在struts的xml里怎么写<result>的跳转路径
即可以显示home.jsp ,右边的页面又可以显示相对应的struts操作后的跳转页面。


target属性可以设置成"_self"(这是个系统值,注意前面的下划线),表示在当前的页面跳转,也就是说Struts2页面内部的按钮啊操作啊(不涉及导航)可以统统让它们在本页面里转换。并且不会影响其他框架里的内容,也就是整个页面框架集还是home.jsp

444944967
2014-12-13
知道答主
回答量:31
采纳率:0%
帮助的人:18.9万
展开全部
这是前端范畴,请查看frame标签方法
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式