web-dev-qa-db-ja.com

jQuery datepickerでonChangeを聞いていますか?

私は現在、そのような日付ピッカーを作成しています

HTML

<script src="https://code.jquery.com/ui/1.11.4/jquery-ui.min.js"></script>
<input id="datepicker" type="datepicker" name="date" placeholder="Date" />

JS

$('#datepicker').datepicker()
    .on("change", function (e) {
    console.log("Date changed: ", e.target.value);
});

私の目標は、ユーザーが日付ボックスをクリアしたときにリッスンできるようにすることです。ただし、変更イベントは、日付ボックスのフォーカスを外したときにのみ発生するようです。 jQueryの日付ボックスにすべての変更をリッスンする方法があるのか​​、それともより良い代替手段があるのか​​疑問に思っています。

JsFiddleリンク: https://jsfiddle.net/szkfm0y7/

22
John Pizzo

On inputイベントと共に change でjqueryを使用します

$('#datepicker').datepicker()
    .on("input change", function (e) {
    console.log("Date changed: ", e.target.value);
});

フィドル

31

考えられる解決策は次のとおりです。 https://jsfiddle.net/7atsua85/

E.target.valueの代わりに、以下に示すように$(this).val()を使用します。

$('#datepicker').datepicker()
    .on("change", function (e) {
    //console.log("Date changed: ", e.target.value);
    alert($(this).val())
});
5