在javascript中转换日期格式

时间:2012-06-02 00:05:25

标签: javascript jquery

我有一个输入字段,页面加载如下所示:

<input type="input" id="start_date" name="start_date" value="May 12, 2012"/>

我希望发生以下情况:

  • 当用户点击该字段输入日期时,格式将更改为YYYY-MM-DD。 (2012-05-12)
  • 用户离开该字段后,格式将更改回MMM DD,YYYY(2012年5月12日)。
  • 通过邮寄提交数据时,格式为YYYY-MM-DD(2012-05-12)。

我如何使用jQuery实现这一目标?

1 个答案:

答案 0 :(得分:0)

如果您不想依赖特定的框架/插件,可以这样做:

$("#start_date").click(function() {
    var d = new Date($(this).val());
    $(this).val(d.getFullYear() + "-"
        + String(d.getMonth() + 101).slice(-2) + "-"
        + String(d.getDate() + 100).slice(-2));
}).blur(function() {
    // Eventual format checking goes here

    var m = $(this).val().split("-"),
        d = new Date(m[0], m[1] - 1, m[2]),
        s = d.toString().split(" ");
    $(this).val(s[1] + " " + s[2] + ", " + s[3]);
});