首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >DateTimeFormatter

DateTimeFormatter
EN

Stack Overflow用户
提问于 2012-10-05 21:33:58
回答 2查看 913关注 0票数 2

如果我运行以下命令:

代码语言:javascript
复制
var newdate = new Date();
var dt = new Windows.Globalization.DateTimeFormatting.DateTimeFormatter("shortdate");
var date = dt.format(newdate);

我得到的结果类似于2012年10月14日,这很好,但是如果我把它放到WinJS.xhr的url中,它就会变成?10?/?4?/?2012。

服务调用的示例代码

代码语言:javascript
复制
var urlAddress ="http://www.communitymegaphone.com/ws/CMEventDS.svc/GetEventsByDistance?Lat='" + mapCenter.latitude + "'&Lon='" + mapCenter.longitude + "'&Dist=" + eventsByDistance + "&$filter=(starttime%20gt%20datetime'" + date  + "')&$orderby=starttime%20asc&$format=json";

WinJS.xhr({
        type: "GET",
        url: urlAddress
    }).then(processSuccess, processError);

如果我使用普通的老式javascript datetime,一切都很好。

我是不是错过了什么场景?我还尝试过将url的编码更改为不同的格式,但没有成功。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-03-23 12:52:04

DateTimeFormatter专为面向用户而设计。当你创建一个url时,你不再是面向用户的,而是面向后端的。为此,您需要使用标准的日期格式(如iso 8601),而不是一种适应用户语言的格式。

票数 1
EN

Stack Overflow用户

发布于 2012-10-06 00:14:47

在构建这样的URL时,需要将日期表示为字符串。

我不确定为什么格式化程序没有返回正确的字符串,但这样的事情有时表明输入和输出之间的编码不匹配。

我想说的是,坚持使用JavaScript datetime可能是解决问题的方法,除非您出于某种特定的原因而确实需要DateTimeFormatter。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12747413

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档