表单输入类型=日期并重复显示.change

时间:2013-08-05 15:48:25

标签: jquery forms

所以我有以下小提琴:http://jsfiddle.net/bmgh1985/XcScd/

我需要做的是当我输入日期时,它会经历这一点jquery:

$('#headline').keyup(function () {
    $('#headlinedisp').text($('#headline').val());
});
$('#timestamp').change(function () {
    $('#timestampdisp').text($('#timestamp').val());
});
$('#news').keyup(function () {
    $('#newsdisp').text($('#news').val());
});

然后在下方显示预览。 在我开始使用“日期”类型之前,这一切都很好。现在,当我输入类似23/03/2013的内容时,它会以2013-03-23的形式显示。这对我来说非常棒,因为我将它粘贴到我的sql表中,但希望通过略微修改该jquery来实时显示它在显示框中的写入。

另外,我会让一些后来的人坚持使用IE6,7,8,所以他们会看到一个标准的文本框,他们将在23/03/2013输入,它将正确显示输出。我也不希望它搞乱那个(所以基本上,如果它的文本然后离开它。如果它在日期类型,改变.change上的输出是正确的格式)

提前致谢

1 个答案:

答案 0 :(得分:0)

无论输入类型和格式如何,我能想到为您的日期实现一致输出格式的最佳方法是从输入创建一个javascript Date对象,然后使用像这样的答案{{3实现所需的目标格式。

当然,这只适用于完成日期。如果您想在键入日期时重新​​格式化日期,则可能需要手动解析输入并将其重新组织为您想要的格式。