![](http://static.blog.csdn.net/images/category_icon.jpg)
版权声明:本文为博主原创文章,未经博主允许不得转载。
Extjs提交表单
- success:function(form,action){
- var data=Ext.JSON.decode(action.response.responseText);
- Ext.Msg.alert("www ok",data.id);
- },
- failure: function(form, action){
- if (action.failureType === action.CONNECT_FAILURE) {
- Ext.Msg.alert('Error',
- 'Status:'+action.response.status+': '+
- action.response.statusText);
- }
- if (action.failureType === action.SERVER_INVALID){
- // server responded with success = false
- Ext.Msg.alert('Invalid', action.result.errormsg);
- }
- Ext.Msg.alert('Invalid',action.failureType);
- }
- public class loginAction extends HttpServlet {
- public void doGet(HttpServletRequest request, HttpServletResponse response)
- throws ServletException, IOException {
- String username= request.getParameter("username");
- String password= request.getParameter("password");
- if(username.equals("www")&&password.equals("123")){
- response.getWriter().write("{id:0001}");
- System.out.println(username+password);
- }
- }
- }
可是,找了好久,发现怎么都是执行的failure的回调函数 action.failureType为server,百思不得其解
后来发现 回调success或failure是根据返回来的参数的json串中的"success"的值来决定的
response.getWriter().write("{id:0001}");
应该改为 response.getWriter().write("{success:true,id:0001}");
就可以解决问题