jquery ajax post 回调函数不执行的原因分析和解决办法

今天在写一个检查用户名的功能时,使用的是jQuery.post( url, [data], [callback], [type] )这个函数,但是发现其中的回调函数不能执行。

先来看看我的代码:

前台代码:

后台代码(checkUser.ashx):

        public void ProcessRequest(HttpContext context)
        {
            context.Response.ContentType = "application/json";
            string action = context.Request["Action"];
            string user = context.Request["Name"];
            string result = "{result: 0}";
            switch (action)
            {
                case "Check":
                    if (us.isExists(user))
                    {
                        result = "{result: 1}";
                    }
                    break;
            }
            context.Response.Write(result);
        }

但是怎么也不执行回调函数中的alert(data)语句,经过单步跟踪,最后发现是返回的Json字符串有问题。

原来jquery中规定返回的JSON字符串的KEY要用引号括起来,如{"result": 1}这样才可以。


你可能感兴趣的:(JQuery)