2013-08-05 49 views
0

所以我有以下小提琴:http://jsfiddle.net/bmgh1985/XcScd/表單輸入類型=日期和重複顯示.change

我需要這個做的是,當我輸入的日期,它通過該位的jQuery:

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

然後在下面顯示預覽。 在我開始使用「日期」類型之前,這一切都很好。現在,當我輸入類似於2013年3月23日的內容時,它將以2013-03-23的形式顯示。對我來說這非常適合當我將它粘貼到我的sql表中,但想要通過稍微修改該jquery來實時顯示它在顯示器中的框中顯示的情況。

此外,我會有一些反向的人堅持使用IE6,7,8,所以他們會看到一個標準的文本框,他們將輸入23/03/2013,它會顯示爲輸出正確。我不希望它搞亂,最多是(所以基本上,如果它的文本,然後離開它。如果它在日期類型,改變對.change輸出是正確的格式)提前

感謝

回答

0

無論輸入類型和格式如何,我都能想到的爲您的日期實現一致輸出格式的最佳方式是從輸入創建一個javascript Date對象,然後使用如下方法回答Where can I find documentation on formatting a date in JavaScript?實現所需的目標格式。

當然,這隻會在完成日期。如果您想在輸入日期時重新​​格式化日期,則可能需要手動分析輸入並將其重新組織爲所需的格式。

+0

感謝您的支持。似乎可能是要走的路。使用HTML5中的日期框,它無論如何都不會在更新keyup方面表現良好,而且我並不擔心支持IE 6/7/8,因此它們也必須是即時的)。將在接下來的一小時左右進行測試,然後希望它能繼續工作。 – bmgh1985

+0

好吧,我已經調整了它,試圖讓這個工作和_thought_我有它的嫌疑,但似乎不希望實際上將日期識別爲一個數字,我運行這個版本的小提琴時得到NaN/NaN/N:http ://jsfiddle.net/bmgh1985/XcScd/3/ – bmgh1985

+0

這行'var d = new Date('#timestamp');'應該是'var d = new Date($(this).val());'' 。 – asymptoticFault

相關問題