ajax
来源:互联网 发布:贵阳软件人均工资 编辑:程序博客网 时间:2024/06/01 09:07
Ajax----请求--->服务器---响应---->Ajax回调
意思是如果你用ajax发送请求,最后不管怎么样,响应结果都会回到这个ajax,这是异步操作。
所以通常Ajax的配置根本不配返回路径,即使配了<return>ajax也不认识
<action="ajaxAction" class="xx" method="xx">
</action>
而struts2的验证框架通常适合于提交表单,这样它就可以
<action="formAction" class="xx" method="xx">
<return name="success">xxx.jsp</result>
<return name="input">xxx.jsp</result>
</action>
那么总结下:如果使用Ajax提交,它会进入xml里面进行校验,而且会返回input,但是返回的input数据到Ajax的回调函数里面了,而且返回的是一个页面,你可以通过data.responseText获得,但是获得也没什么意义。
解决方法两种:
①Ajax提交的话不使用struts2的XML校验,改用直接在Action method中校验,如果为空使用response.getWriter().print()打印错误消息,然后Ajax回调函数进行相关处理
②不使用Ajax提交,使用表单submit提交,使用struts2的XML校验,这样绝对能在<s:fielderror/>中输出错误消息
意思是如果你用ajax发送请求,最后不管怎么样,响应结果都会回到这个ajax,这是异步操作。
所以通常Ajax的配置根本不配返回路径,即使配了<return>ajax也不认识
<action="ajaxAction" class="xx" method="xx">
</action>
而struts2的验证框架通常适合于提交表单,这样它就可以
<action="formAction" class="xx" method="xx">
<return name="success">xxx.jsp</result>
<return name="input">xxx.jsp</result>
</action>
那么总结下:如果使用Ajax提交,它会进入xml里面进行校验,而且会返回input,但是返回的input数据到Ajax的回调函数里面了,而且返回的是一个页面,你可以通过data.responseText获得,但是获得也没什么意义。
解决方法两种:
①Ajax提交的话不使用struts2的XML校验,改用直接在Action method中校验,如果为空使用response.getWriter().print()打印错误消息,然后Ajax回调函数进行相关处理
②不使用Ajax提交,使用表单submit提交,使用struts2的XML校验,这样绝对能在<s:fielderror/>中输出错误消息
- Ajax
- Ajax
- AJAX
- AJAX
- AJAX
- AJAX
- AJAX
- ajax
- ajax
- Ajax
- ajax
- ajax
- AJAX
- Ajax
- Ajax
- Ajax
- ajax
- ajax
- 使用单链表实现链队列
- 学术家族树设想
- Android:Intent Filter 和 action 简介
- ListView自适应实现表格
- 结婚
- ajax
- java数据结构----经典排序集锦
- Linux子进程对父进程资源的“写时拷贝”
- 通过存储过程 创建动态触发器
- Windows API 每日一练之 TrackMouseEvent
- Uva 216 Getting in Line
- POJ1724 ROADS(加限制条件的最短路,深搜)
- 读《设计模式》一
- ewf