0

andである入力フィールドがstart_timeありend_time、これらのフィールドは data-format でフォーマットされています HH:mm:ss PP

私がやりたいことは、ユーザーがデータを入力し終わったら、時間を計算するために AJAX を実行することです。

しかし、入力フィールドの適切なイベントが何であるかがわからないため、少し混乱しています。を試しましたがkeydown、まだ動作しません。keyupfocus

入力フィールドは次のstart_timeとおりです。

    <div class='input-append' id='datetimepicker2'>
        <input data-format='HH:mm:ss PP' type='text' name="start_time" id="start_time" value="<?php echo set_value('start_time')?>"/>
        <span class='add-on'>
          <i data-date-icon='icon-calendar' data-time-icon='icon-time'>
          </i>
        </span>
      </div>
    </div>
    <script type='text/javascript'>
      $(function() {
        $('#datetimepicker2').datetimepicker({
          language: 'en',
          pick12HourFormat: true,
          pickDate: false
        });
      });
    </script>

そしてのためにend_time

    <div class='input-append' id='datetimepicker3'>
                <input data-format='HH:mm:ss PP' type='text' name="end_time" id="end_time" value="<?php echo set_value('end_time') ?>"/>
                <span class='add-on'>
                  <i data-date-icon='icon-calendar' data-time-icon='icon-time'>
                  </i>
                </span>
              </div>
            </div><script type='text/javascript'>
              $(function() {
                $('#datetimepicker3').datetimepicker({
                  language: 'en',
                  pick12HourFormat: true,
                  pickDate: false

                });
              });
            </script>
4

1 に答える 1

0

onblurを使用すると、ユーザーが入力フィールドへのデータの入力を終了し、フィールドからフォーカスを外すと、イベントがトリガーされます

以下のコメントに従って編集

コードでブートストラップの日付ピッカーを使用していると思います。そうでない場合は、使用している datpicker または js ライブラリについて言及してください。

ブートストラップ日付ピッカーの場合、日付ピッカー値が変更されるたびにトリガーされるタスクのchangedateイベントを確認できます。また、利用可能な changeYear && changeMonth イベントも確認できます。

これは、対応する日付ピッカーで変更が行われるたびにアラートをトリガーする、提供したコードを使用したデモフィドルです。変更時に実行したい任意のコードに置き換えることができます。

サンプルコードスニペット

$('#datetimepicker2').datetimepicker({
      language: 'en',
      pick12HourFormat: true,
      pickDate: false
}).on('changeDate', function (e) {
    alert("first one changed"); // replace with your code block
});;
于 2013-08-16T14:33:11.253 に答える