代码之家  ›  专栏  ›  技术社区  ›  user1451890

将日期格式(yyyy-mm-dd)从DB更改为dd/mm/yyyy

  •  0
  • user1451890  · 技术社区  · 10 年前

    我需要你帮忙解决日期和时间格式问题。

    首先,我在输入文本框中输入了正确的日期格式dd/mm/yyyy。2014年4月1日 2014年4月1日

    其次,我正在将输入文本框中的值写入MDB数据库:dd/mm/yyyy。2014年4月1日

    第三,我的MBD似乎自动将我的日期(年/月/日)重新安排为年-月-日(美国标准)

    因此,当我从mdb中检索日期时,我会得到一个长日期:2014年1月4日星期六00:00:00 EST

    我想我需要一个javascript函数,它可以接受长日期,将其转换为yyyy/mm/dd,然后将字符串重新组织为dd/mm/yyyy(英国标准)

    2 回复  |  直到 10 年前
        1
  •  0
  •   fnostro    10 年前

    还有其他事情要考虑。

    您的DB字段实际上是日期时间字段吗?

    日期的字符串格式与数据库内部表示完全无关。与其说是重新排列日期,不如说是将其隐式转换为数据库默认设置的日期/时间格式。

    恰好“2014年4月1日”是一种有效的英国和美国格式,因此在没有显式转换的情况下,日期存储使用DB默认值。“31/4/2014”可能会导致错误。

    只是一个想法

        2
  •  0
  •   UpQuark    10 年前

    尝试使用 JavaScript Date object 。您应该能够将该长日期字符串传递到其中。一旦将其保存在date对象中,就可以使用其方法轻松地将日期转换为所需的任何格式。例如,如果您想在UI上显示英国标准,可以执行以下操作:

    myDisplayDate = myDate.day + "/" + myDate.month + "/" + myDate.year;
    

    你可能需要 toString() 在这些方法结束时,我不记得它是否足够聪明,可以自动转换。