2016-09-14 16 views
0

私はdatepickerを使用しているフォームフィールドを持っています。JqueryUI DatePicker

フォームフィールドの形式は、PHPを介して印加される値yymmdd

<input type='text' id='date' name='date' value='<?php echo $date ?>'> 

を持っているのjQuery:

$("body").on('focus', '#date', function(){ 
     $(this).datepicker({ dateFormat: "d MM yy", minDate: 0, maxDate: "+1Y -1D"});  
    }); 

ページでは、値は、フィールドなどに表示されますロードするとき:160914

私がしたいのは、datepickerがこの形式を正しく検出していることです。ピッカーが表示されたときに2016年9月14日が強調表示されます。

私はまた、ユーザーが日付を選択すると、フィールドは例えばを表示しますたいと思います:2016年9月21日が、データベースに書き戻すことが可能な値は、これが160921

を行うことができますでしょうか?誰かが私を正しい方向に向けることができますか?

ありがとうございました

+1

altFieldを調べてaltFormat。 –

+0

ありがとう - どのように表示され、ピッカーはそれを見つけることができるか何かがありますか? – Tom

+0

'<?php echo $ date?> ''を変更して、文字列を適切にフォーマットすることを止めますか? –

答えて

1

私はあなたのための解決策を見つけたと思います。あなたのdateFormatが間違っていたことに注意してください。すべての詳細については、documentationを確認してください。しかし、:)おそらくPhpでより良い日付、Y-m-dのようないくつかの有用な形式を印刷することをお勧めします。それと幸運をチェックしてください:表示されたものとは異なるフォーマットを送信するための

$('input').datepicker({ altFormat: "y mm d", dateFormat: "dd MM yy", minDate: 0, maxDate: "+1Y -1D"}); 
 
$('input').val($.datepicker.formatDate("dd MM yy", $('input').datepicker("getDate")));
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<script src="https://code.jquery.com/ui/1.12.0/jquery-ui.min.js"></script> 
 

 
<input type='text' id='date' name='date' value='16 09 14'>

+1

ありがとう、これは多くの助け:) – Tom

関連する問題