看 jQuery getJSON 源码.服务端只需要返回
一个串:"true"
即可.

解决方案 »

  1.   

    多谢楼上兄弟.我也是这样想.但返回context.Response.Write("true"),Jquery.getjson还是接收不到任何callback,到底怎么回事呢.把我搞傻了
      

  2.   

    大家在吗?求求大家了,几天没睡觉了.就为了它.
    还有假如  jQuery.getJSON("media.ashx",{"Method":"errorReport",   "mediaid":mediaId,   "reportMsg":   reportMsg,   "ruser":   ruser},   function(response){ 
                            
                          if(response){ 
                                    jQuery(".popErrorReport").hide(); 
                                    jQuery(".errorReport").hide(); 
                                    alert("消息已发送。"); 
                          } 
                    
                    }); 
                            }); 
    又应如何在ashx中写callback呢
      

  3.   

    没用过jqueary
    友情UP……
      

  4.   

    在ashx  中的返回值应该是json格式的。自己可以组织一下试试看。
      

  5.   

        public void checklogin()
        {
            //获得登录页面POST过来的参数
            string username = Request.Params["id"].ToString();
            string userpwd = Request.Params["pwd"].ToString();
            if (username == "admin" && userpwd == "admin")
            {
                //如果登录成功则构造这样序列化好的JSON格式的数据
              // 这里我用1来表示成功,大家可以随便用什么表示都可以
                Response.Write(CreareJson("这里面可以随便写点什么", 1));
            }
          else
            {
              // 否则是这样的
                Response.Write( CreareJson("这里面可以随便写点什么", 0));
            }
          // end方法一定要写 终止客户端的执行
            Response.End();
        }
        /// <summary>
        /// 定义一个方法用来输出标准的JSON格式数据
        /// </summary>
        /// <param name="info">用来描述一般字符串 </param>
        /// <param name="sta">这个用来表示和ajax传输过来数据比较的一个key和value,不一定非用这个表示 </param>
        /// <returns>返回标准JSON格式字符串 </returns>
        private string CreareJson(string info,int sta) 
        {
            return "{\"info\":\"" + info + "\",\"sta\":" + sta + "}";
        }
      success:function(data)
              {
                    //这是个重点,根据验证页面(login.aspx)输出的JSON格式数据判断是否登录成功
                    //这里我用1表示的
                    //sta就是那个输出到客户端的标示
                    if(data.sta==1)
                    {
                        $('#confirm').html('登录成功!');location.href='loginOK.htm';
                    }
                    else
                    {
                      $('#confirm').html('密码都没输入正确还想进,哼!').addClass('red');
                   
                    }
            }
      });
      

  6.   

    我用的asp.net mvc模式,C#中直接这样写:
    public JsonResult TestAdd()
    {
        .............
        return this.Json(object *);
    }
    Jquery中:
    jQuery.getJSON("media.ashx",{"Method":"errorReport", "mediaid":mediaId, "reportMsg": reportMsg, "ruser": ruser}, function(response).其中response就是C#中的相应值。asp.net web还没有试过。
      

  7.   

    貌似是跨域的问题权限。你将ashx和jquery请求页面一起放在同一个域内就可以了。
    比如都放在http://www.aaa.com/下。
    跨域时即使请求成功,显示响应也是空。
    比如你的jquery程序文件是在本地盘上,本地浏览时,请求网络上的ashx会得到空响应!
      

  8.   

    getJSON 需要返回服务器端json格式的内容
    如果你只是需要一个bool的判断的话,用get就可以了
      

  9.   

    改成这样试试:
              if(response.toString() =="true"){
                    jQuery(".popErrorReport").hide();
                    jQuery(".errorReport").hide();
                    alert("消息已发送。");
              } 
    话说楼主用的是哪个版本的jquery?
      

  10.   

    你们都不看哦!楼主发帖的日期是:2007-12-09 03:55:42。有年头了!估计楼主已经成jquery高手了!