开发者社区 问答 正文

Action中写入返回值后, 前台jQuery ajax 执行error, 不执行success

//action - execute
HttpServletResponse response = ServletActionContext.getResponse();
response.setContentType("text/html");
String msg = "{\"state\":\"" + state + "\"}";
PrintWriter out = response.getWriter();
out.write(msg);
out.flush();
out.close();
return null;

<package name="global" extends="json-default">
    <action name="login" class="loginAction">
        <result type="json" />
    </action>
</package>

jQ.ajax({
    url:"login.action",
    data:params,
    success:function(json){
    var data = json.state;
    if(data=="success")
        jQ.jBox.alert("登入成功", "action message");
        if(data=="failed")
            jQ.jBox.alert("登入失败", "action message");
        if(data=="error")
            jQ.jBox.alert("登入出错", "action message");
    },
    error:function(XMLHttpRequest, textStatus, errorThrown){                                    alert("XMLHttpRequest.status="+XMLHttpRequest.status+
"\nXMLHttpRequest.readyState="+XMLHttpRequest.readyState+               "\ntextStatus="+textStatus);
    }
            });

screenshot

展开
收起
a123456678 2016-07-14 15:03:31 2192 分享 版权
1 条回答
写回答
取消 提交回答