【问题标题】:Presentation of dates sent over JSON in Single Page Applications在单页应用程序中显示通过 JSON 发送的日期
【发布时间】:2011-10-01 03:53:48
【问题描述】:

我正在使用backbone.js、mustache 和jquery 开发单页面应用程序,前端使用Groovy on Grails。我的应用程序需要在界面中向用户显示一些日期(根据用户的区域设置而不是“30 天前”或其他格式的确切日期),并且所有数据都使用 JSON 发送到 UI,日期以 ISO 8601 编码标准。

但是,当我需要在屏幕上显示日期时,我不确定最好的解决方法,我应该使用 javascript 将日期转换为人类可读的日期吗?以及如何获取用户的语言环境并确定日期格式是什么?有没有好的图书馆可以做到这一点?另一种方法是在 JSON 中包含两次日期,一次使用 ISO8601,另一次在请求标头中给定区域设置,以便人类阅读。

只是想知道其他人是否已经解决了这个问题,以及您的最终解决方案是什么。干杯。

【问题讨论】:

    标签: jquery json date internationalization backbone.js


    【解决方案1】:

    如果您确实需要发送 ISO8601(例如在某处使用此表示),您可能需要创建自己的自定义解决方案(不存在原生 JavaScript 中的跨浏览器格式化方法)。

    有一个 JQuery Globalization plugin 可以让您正确格式化日期,但我没有时间研究它,所以我不确定它的输入是什么。

    另一方面,如果您不需要对日期执行任何操作,则发送已格式化的日期可能是一个好主意(这当然更容易实现)...

    【讨论】:

    • 我没有理由不能发送预先格式化的日期,只是因为我的后端基本上只是一个 REST 接口,因此以某种格式发送数据感觉“脏”这纯粹是为了演示。不过,这肯定是最简单的方法。 jQuery 插件看起来很有趣,我会进一步调查。
    • 全球化库非常好,看起来正是我需要的,谢谢。顺便说一句,自从您链接到的博客文章以来,它已经更新了很多,现在可以在 github.com/jquery/globalize 获得,并且似乎不再需要 jQuery。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-10-24
    • 2019-09-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-09-12
    相关资源
    最近更新 更多