2016-09-14 139 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