日期:2014-05-16  浏览次数:20737 次

为什么我的ajax请求返回的页面不跳转啊
本帖最后由 showbo 于 2012-11-05 17:23:52 编辑
如题:
这是action的方法Login.java
	public String jqajax(){
System.out.println("执行ajax请求");
return "ajaxRequire";
}

struts.xml对应的配置
                <action name="printAction" class="controller.Login" method="jqajax">
<result name="ajaxRequire">/admin/JQueryAjax.jsp</result>
</action>

jsp页面JQueryAjax.jsp
<!DOCTYPE HTML PUBLIC '-//W3C//DTD HTML 4.01 Transitional //EN">
<html>
<head>
<title>ajax示例</title>
<meta charset="utf-8">
<link rel=stylesheet href="../style/mystyle.css" type="text/css"/>
</head>
<body style="background-color:skyblue">
<center>JBOSS 控制台输出"执行ajax请求"</center>
</body>
</html>

JBOSS输出了"执行ajax请求"这句话,页面却没有跳转,为什么?因为ajax是异步的,我不懂ajax,刚学,请求帮忙~~
------解决方案--------------------
ajax只接受最后返回的值,不会响应跳转请求更改浏览器地址栏地址转向的,你需要用js判断ajax的返回值是否要跳转,然后设置location.href实现跳转。
------解决方案--------------------
页面不用 ajax异步 ,就直接调用action/jqajax  路劲就可以跳转  
------解决方案--------------------
ajax异步请求struts的action只会返回所请求页面的html源代码。
这样请求是不会跳转的。
不知道你的实际需求,这种用法只是在替换页面局部html时使用。