我用的是C#.Net
我调用web方法要返回一个日期值为"2010/10/1",
但是web方法返回的是{"d":"\/Date(1285862400000)\/"}
这根本用不了!那位高手来帮帮忙,谢谢

解决方案 »

  1.   

    楼主用的ajax吗??web方法是什么??Jquery的话直接返回字符串不就行了??
      

  2.   

    楼主用的ajax吗??web方法是什么??Jquery的话直接返回字符串不就行了?? 
     
      

  3.   

    返回的是json数据,而且并不是完整的日期,或者说不是日期格式,这中数字以前遇到过,其实是 1970-1-1 12:00:00 加上毫秒数得到的(在 .net 里),你做相应的处理吧,或者如果你的web是php环境的话php提供了个方法进行这类数字到日期的转换函数,具体是哪个忘记了,去搜索下看看。.net里可以试试这个,tbValue.Text就是那串数字了,记得去掉3个0(记得就是以1970-1-1 12:00:00 为基准,具体的你测试测试吧)
    DateTime dt = new DateTime(1970,1,1);
    dt = dt.AddHours(12);
    dt=dt.AddSeconds(long.Parse(tbValue.Text));
    MessageBox.Show(dt.ToString());
      

  4.   

    我是用JQuery调用C#.Net的web方法
    //jquery代码
     $.ajax({
            type: "POST",
            contentType: "application/json; charset=utf-8",
            url: "WebServices/Text2010.asmx/GetTime",
            dataType: "json",
            anysc: false,
            data: dat, // Post 方式,data参数不能为空"",如果不传参数,也要写成"{}",否则contentType将不能附加在Request Headers中。
            success: function (data) {
                GetTrue(data);},
            error: function (xhr, status) {
                alert("覃蚚WEB滲杅Add囮啖! \r\n" + status + "\r\n" + xhr.responseText);
            }
        });
    //web代码
        [WebMethod]
        public DateTime GetTime(string dataa)
        {
            return Convert.ToDateTime("2010/10/1");
        }
    //我正在学习JQuery,所以想试一下,如何接收web方法返回的值,但是日期格式的值却变成{"d":"\/Date(1285862400000)\/"}
      

  5.   

    我不要转换成字符串,我只想知道如何把"\/Date(1285862400000)\/"变成"yyyy/MM/dd"的格式,谢谢
      

  6.   

    1285862400000这个就是把日期转换成long表示了
    你可以解析这个字符串把1285862400000这个数字拿出来
    然后new Date(1285862400000)得到那个日子