jQuery UI の datepicker、キー入力と併用
4542 ワード
jQuery UI の datepickerで、キー入力による入力可能にする
ステップ1、Hidden項目を追加する
<!-- 日付テキスト項目 -->
<input type="text" id="datepickerDisplay" />
<!-- Hidden項目 -->
<input type="hidden" id="datepickerDisplayHidden" />
ステップ2、onSelectを以下のように改修。
/**********************************************************************************
* datePicker設定
**********************************************************************************/
$('#datepickerDisplay').datepicker({
// 日付選択イベント
onSelect: function(date) {
var momentDate = moment($('#datepickerDisplay').val());
// 入力した日付が有効ではない場合
if (!momentDate.isValid()) {
return;
}
var datepickerVal = momentDate.format("YYYY/MM/DD");
var datepickerValBK = $('#datepickerDisplayHidden').val();
// Hidden項目で保持した日付と一致しない場合
if (new Date(datepickerVal).getTime() != new Date(datepickerValBK).getTime()) {
date = datepickerVal;
$('#datepickerDisplay').val(datepickerVal);
}
// HIDDEN項目に日付を保持
$('#datepickerDisplayHidden').val(date);
}
});
<!-- 日付テキスト項目 -->
<input type="text" id="datepickerDisplay" />
<!-- Hidden項目 -->
<input type="hidden" id="datepickerDisplayHidden" />
/**********************************************************************************
* datePicker設定
**********************************************************************************/
$('#datepickerDisplay').datepicker({
// 日付選択イベント
onSelect: function(date) {
var momentDate = moment($('#datepickerDisplay').val());
// 入力した日付が有効ではない場合
if (!momentDate.isValid()) {
return;
}
var datepickerVal = momentDate.format("YYYY/MM/DD");
var datepickerValBK = $('#datepickerDisplayHidden').val();
// Hidden項目で保持した日付と一致しない場合
if (new Date(datepickerVal).getTime() != new Date(datepickerValBK).getTime()) {
date = datepickerVal;
$('#datepickerDisplay').val(datepickerVal);
}
// HIDDEN項目に日付を保持
$('#datepickerDisplayHidden').val(date);
}
});
Author And Source
この問題について(jQuery UI の datepicker、キー入力と併用), 我々は、より多くの情報をここで見つけました https://qiita.com/XXL9527/items/77428b3f6e2082771e2c著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .