次の入力フィールドにjQueryのタイムピッカー(http://timepicker.co/)を使用しています。ドロップダウンからオプションを選択すると、jquery on changeイベントハンドラが起動しないようです。手動で値を入力してタブキーを押すと動作するように見えますか?JQuery Timepicker - 変更イベントハンドラが動作していませんか?
<input id="TmOnSite" class="timepicker js-tm-on-site" type="text" value="" name="TmOnSite" aria-invalid="false">
<input id="TmOffSite" class="timepicker js-tm-on-site" type="text" value="" name="TmOffSite" aria-invalid="false">
<input id="TmTotalHrsOnSite" class="" type="text" value="" readonly="true" name="TmTotalHrsOnSite">
<script>
$(function() {
TimePicker();
});
var TimePicker = function() {
if ($(".timepicker").length === 0) { return; }
$(".timepicker").timepicker({
timeFormat: 'HH:mm',
interval: 30,
scrollbar: true
});
};
var tmTotalHrsOnSite = function() {
$(document).on('change select', '.js-tm-on-site', function (e) {
if ($("#TmOnSite") && $("#TmOffSite")) {
var startTime = moment($("#TmOnSite").val(), "HH:mm");
var endTime = moment($("#TmOffSite").val(), "HH:mm");
var duration = moment.duration(endTime.diff(startTime));
$("#TmTotalHrsOnSite").val(duration.asHours().toFixed(2));
}
});
}();
</script>
'$( 'timepicker。')timepicker({ 変化:関数(時間){ }});'のドキュメントを読むhttp://timepicker.co/。オプション/ – Satpal