首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > Ajax >

jQuery ajax 回来页面的Html,并非后台Response.Write()出来的值

2013-01-01 
jQuery ajax 返回页面的Html,并非后台Response.Write()出来的值页面脚本调用如下:function validateAcc()

jQuery ajax 返回页面的Html,并非后台Response.Write()出来的值
页面脚本调用如下:


function validateAcc() {
        var Email = document.getElementById("myEmail").value.trim();
        if (isEmail(Email)) {
            var Psw = document.getElementById("mypassword").value;
            var arg = document.getElementsByName("radUser")[1].checked ? "login" : "createAccount";
            
            $.ajax({
                type: "GET",
                url: "ajaxforlogin.aspx",
                data: "todo=" + arg + "&email=" + Email + "&psw=" + Psw,
                success: function (html) {
                    PopupLogin_Complete(html);
                }
            });
        }
        else {
            document.getElementById("ErrorMsg").innerHTML = "<%= Resources.lang.mvalidLogin%>";
        }
    }
    function PopupLogin_Complete(result) {
        if (result != "") {
            var sValues = result.split('|');
            var sMsg = sValues[0];
            var sType = sValues[2];
            var sUserName = sValues[3];
            if (sType == "loginSuccess") {
                $("#wel_Info").html("<%=Resources.lang.mHeader_Welcome%>" + sUserName);
                $("#yourFirstName").html("<%=Resources.lang.mHey %> " + sUserName);

                closePop();
                //getObj("yourimage").innerHTML=sValues[1];
            }
            else if (sType == "loginFail") {
                document.getElementById("ErrorMsg").innerHTML = sMsg;
            }


            else if (sType == "createAccountFail") {
                document.getElementsByName("radUser")[1].checked = true;
                document.getElementById("mypassword").focus();
                document.getElementById("mypassword").select();
                document.getElementById("ErrorMsg").innerHTML = sMsg;
            }
            else if (sType == "createAccountSuccess") {
                location.href = "/register.aspx?user=" + document.getElementById("myEmail").value.trim();
            }
        }
    }


PopupLogin_Complete方法里面 result 不是 ajaxforlogin.aspx 页面后台输出的值,而是当前调用页面的Html,而且 url无论写什么页面就算不存在,都会success调用PopupLogin_Complete方法,result也是Html

求大侠支招

ajaxforlogin.aspx后台代码是这样的

protected void Page_Load(object sender, EventArgs e)
    {
        string sEmail = CMS.DBUtility.DBHelper.RemoveInject(Request.QueryString["email"] + "");
        string sPsw = CMS.DBUtility.DBHelper.RemoveInject(Request.QueryString["psw"] + "");

        Response.Write(Login(sEmail, sPsw));
        Response.End();
    }

[解决办法]
先确定下有没有进入后台吧,正常情况是不会有问题的。
[解决办法]
浏览器直接访问ajaxforlogin.aspx这个页面看输出什么

感觉你服务器做了404/500的错误处理,转向一个友好页面,这样客户端得到的是200状态,而非404/500,导致执行了success回调

热点排行