如何在struts1.2中返回字符串给ajax,在ajax中如何获取?

jacky03270327 2010-09-25 11:35:19
我做了一个登陆界面,为了给用户一个很好的登陆提示,如果用户输入的用户名和密码错误,在登陆界面提示,请用户重新输入,如果用户输入的用户名正确,则从ACTION中调转到我的主页面。a、我的ACTION是这样写的:1、接收用户名和密码。2、根据1从数据库中查找,如果数据库中存在用户和密码,则返回一个字符串给AJAX。返回给AJAX代码:ajax.getOut().write("success");(注:我自己定义了一个ajax对象的类,其中有个getOut()方法)。b、我的AJAX这样写的:
$.ajax({
type:"post",
url:"action.do",
data:"",
dataType:"text",
success:function(msg){
if(msg=="success")
{
alert(msg);//测试用,后面代码省略。。
}
}
});
这样的写法,我的AJAX中msg能接收到返回的success字符串,问题是:我现在要在我的action里进行跳转(用户和密码正确的话)return mapping.findForwart("zy");问题出来了,现在我的AJAX中msg不能接收到success字符串,只能接收到跳转所指向页面的HTML代码,怎么回事情呀!如果不进行跳转,只用return null;那么我的ajax能成功接收!问题是我要进行跳转!
...全文
410 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
frech0better 2010-10-05
  • 打赏
  • 举报
回复
具体怎样写,我是不太懂……但是我觉得你不要 在服务器端转向 ,若是登陆成功的话,你就在执行另外一个方法(用此方法访问另外一个action)……
lzh_me 2010-09-28
  • 打赏
  • 举报
回复
action :

return null;
lzh_me 2010-09-28
  • 打赏
  • 举报
回复
action:


//-----------------------设置----
response.setHeader("contentType", "text/html; charset=utf-8");
response.setCharacterEncoding("utf-8");

String printString = "";//返回信息

//你自己的判断
//.....信息可以是JSON也可以是单纯的字符串

//最后返回
PrintWriter out = response.getWriter();
out.print(printString);
out.close();
hoojo 2010-09-26
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 jacky03270327 的回复:]

不好意思我不用表单提交,我用了另外一种方法,可以实现的我功能,(在ajax中实现)只是有点麻烦,想请教大家能否有简便的方法。
[/Quote]

页面跳转了还用ajax做什么,跳转页面就刷新了。
ajax就是页面无刷新无等待的更新页面数据
你要跳转就不要用ajax了,问题是跳转了页面就没有数据了
你return null;就可以获得数据了,然后用innerHTML、createElement、appendChild
动态构建dom元素,完成更新即可
jacky03270327 2010-09-25
  • 打赏
  • 举报
回复
不好意思我不用表单提交,我用了另外一种方法,可以实现的我功能,(在ajax中实现)只是有点麻烦,想请教大家能否有简便的方法。
qinhualee 2010-09-25
  • 打赏
  • 举报
回复
那就表单提交就好了,不用ajax

52,780

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 Ajax
社区管理员
  • Ajax
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧