相关疑难解决方法(0)

如何在JavaScript中使用ISO 8601格式化带有时区偏移的日期?

目标:找到local timeUTC time offset以下列格式构建URL.

示例URL:/ Actions/Sleep?duration = 2002-10-10T12:00:00-05:00

格式基于W3C建议:http: //www.w3.org/TR/xmlschema11-2/#dateTime

文件说:

例如,2002-10-10T12:00:00-05:00(2002年10月10日中午,中央夏令时以及美国东部标准时间)等于2002-10-10T17:00:00Z,比2002-10-10T12:00:00Z晚5个小时.

所以基于我的理解,我需要通过新的Date()找到我的本地时间,然后使用getTimezoneOffset()函数来计算差异,然后将它附加到字符串的末尾.

1.以格式获取当地时间

var local = new Date().format("yyyy-MM-ddThh:mm:ss"); //today (local time)
Run Code Online (Sandbox Code Playgroud)

产量

2013-07-02T09:00:00
Run Code Online (Sandbox Code Playgroud)

2.以小时为单位获取UTC时间偏移量

var offset = local.getTimezoneOffset() / 60;
Run Code Online (Sandbox Code Playgroud)

产量

7
Run Code Online (Sandbox Code Playgroud)

3.Construct URL(仅限时间部分)

var duration = local + "-" + offset + ":00";
Run Code Online (Sandbox Code Playgroud)

输出:

2013-07-02T09:00:00-7:00
Run Code Online (Sandbox Code Playgroud)

以上输出结果表示我的当地时间是2013/07/02 9am,与UTC的差异是7小时(UTC是比当地时间早7小时)

到目前为止它似乎工作,但如果getTimezoneOffset()返回负值如-120怎么办?

我想知道在这种情况下格式应该是什么样的,因为我无法从W3C文档中找到答案.提前致谢.

javascript timezone date-formatting

90
推荐指数
7
解决办法
12万
查看次数

Internet Explorer 8中未定义JSON对象

目前我正在编写一个JavaScript文件并具有以下行:

var res = "JSON=" + JSON.stringify(result);
Run Code Online (Sandbox Code Playgroud)

结果正好在这一行之上.我遇到的问题是IE8(仅限IE8)向我报告JSON未定义.我不知道该怎么做,因为据我所知,IE8是一个实现JSON支持的浏览器.有谁知道可能会发生什么?

html javascript json internet-explorer-8

70
推荐指数
3
解决办法
9万
查看次数

JavaScript:哪些浏览器支持使用Date.parse解析ISO-8601日期字符串

我没能在IE8和Safari 5上解析ISO-8601日期"2011-04-26T13:16:50Z",但它适用于Chrome 10,FF4.支持似乎很混杂?

有谁知道哪些浏览器可以解析这种格式的实际状态?我假设IE6,7也会失败.

var d = Date.parse("2011-04-26T13:16:50Z");
Run Code Online (Sandbox Code Playgroud)

javascript safari internet-explorer datetime

48
推荐指数
4
解决办法
4万
查看次数

将Unix时间戳转换为ISO 8601

我想使用jquery timeago插件 - http://timeago.yarp.com/

我有这样的时间戳1331209044000,文档说我需要ISO 8601时间戳.

说实话,我从未听说过ISO 8601.

我怎么能转换它?

干杯

javascript jquery timeago

25
推荐指数
1
解决办法
3万
查看次数

将DateTime发布到ASP MVC 4(Beta)中的ApiController

当我将带有日期属性的json对象发布到ApiController时,它不会反序列化为日期.

服务器站点代码:

public class MegaTestController : ApiController
{
    // POST /megatest
    public void Post(ttt value)
    {
        string sdf = "!sad";
    }
}

public class ttt
{
    public DateTime Date { get; set; }
    public string Name { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

然后我用fiddler做一个POST请求

POST http:// localhost:62990/MegaTest HTTP/1.1

用户代理:Fiddler

主持人:localhost:62990

内容类型:text/json

内容长度:54

{"日期":"/日期(1239018869048)/","名称":"Dude"}

但进入的对象只有Name属性集,Date属性为{01.01.0001 00:00:00}

我错过了任何标题或项目设置吗?


编辑:请求实际上来自a HttpClient.是否可以在发送请求之前格式化日期HttpClient

public Task<T> Create<T>(T item)
{
    var service = new HttpClient();
    service.BaseAddress = new Uri("http://localhost:62990");

    var method …
Run Code Online (Sandbox Code Playgroud)

c# asp.net-mvc httpclient asp.net-mvc-4 asp.net-web-api

12
推荐指数
3
解决办法
2万
查看次数

10
推荐指数
2
解决办法
1万
查看次数

如何将日期(以毫秒为单位)转换为iso格式的javascript?

可能重复:
如何在Javascript中输出ISO-8601格式的字符串?

如果我有一个表示以毫秒为单位的日期的整数,那么将其转换为iso格式的语法是什么?

javascript

5
推荐指数
1
解决办法
8323
查看次数

这个日期格式是什么?2006-09-01T07:00:00.000 + 0000?是ISO_8601吗?

我正在进行REST调用,我需要以"2006-09-01T07:00:00.000 + 0000"格式发送日期.

用户以"YYYY/MM/DD"格式输入日期,我使用"moment.js"格式化ISO 8601中的日期,格式为"YYYY-MM-DDTHH:MM:SS.MMMZ".但它给了我这个输出"1969-06-20T00:06:00.Jun-07:00".

那么,如何使用moment.js或Javascript以这种格式"2006-09-01T07:00:00.000 + 0000"获取日期?

iso8601 date-format momentjs

4
推荐指数
1
解决办法
6604
查看次数

JSON,HTML:称为2001-07-26T20:52:54Z的时间格式是什么?

像下面这样的日期和时间格式是什么,例如:2001-07-26T20:52:54Z?

以及如何将日期和时间转换为该特定格式以及JSON字符串?

例如,如果用户以7/26/2001和20:52:54输入,我希望将其转换为2001-07-26T20:52:54Z格式。

谢谢

javascript iso

1
推荐指数
1
解决办法
221
查看次数

日期格式未保留在jquery帖子中

在VS2010中开发的MVC 4项目中,我有一个屏幕,其中有一个下拉菜单,其中显示文本的日期显示为dd-MMM-yyyy,其基础值为dd-mm-yyyy。

在发布数据的函数中,当我发出警报时,可以看到所选值在dd-mm-yyy中。

  alert($("#dropdwn_BirthDateVal").val());
Run Code Online (Sandbox Code Playgroud)

上面的这一行以dd-mm-yyyy格式显示我的日期。

但是,当我尝试将该值发布到控制器时,使用相同的方法

  $.ajax({
            type: "POST",
            url:"@Url.Content("~/Home/GetUserDetails")",
            async:false,
            dataType: "JSON",
            data: {
                 //.....other string and integer values
                 //.....that go thru properly
                "myDto.DOB":  $("#dropdwn_BirthDateVal").val()
            },
            error: function (error) {
                alert(error);

           },

           ..... remaining code here 
Run Code Online (Sandbox Code Playgroud)

...日期是 1/1/0001 12:00:00 AM

我发布到“ GetUserDetails”的控制器操作有一个称为UserVM的ViewModel类作为其参数。UserVM具有一个称为MyDto的dto类。MyDto中有一个名为DOB的Date属性,其类型为DateTime。MyDto也具有其他属性。字符串和整数值正确通过。

我想念什么?

asp.net-mvc jquery asp.net-mvc-4

0
推荐指数
1
解决办法
1410
查看次数