2016-08-30 8 views
1

私は2つの時間ピッカーを持っています。最初は「from」時間、2番目は「to」時間です。
私が達成しようとしていたのは、 'from'時間が選択されたとき、 'to'時間が 'from'時間前にすべて無効になり、 'to'時間が新しく 'from'それは 'from'時間の15分後に 'to'時間を更新するでしょう。Pickadate/Pickatime datetimepicker - 選択した値がデフォルトに戻って変更され続けます

時刻の選択を変更したり時刻を無効にしたりすることは、互いに独立しているときは完全に機能しますが、それらを一緒に使用すると、時刻は常に選択の中央値のように見えます。

私はこれを理解して終了し、この問題に遭遇する他の人のために以下の回答を投稿しました。

答えて

1

だから、私はもともとto時間の現在の値が小さいfromその後、より時間だったかどうかをチェックする前disable時間を設定して、それが問題を引き起こしていたdisable関数であったことを働くことになりました。

時間を無効にすると、pickatimeは現在設定されている時間を中央値にリセットします。これは私の午後1時30分です。

私がする必要があったのは、いつでも無効にする前に、新しいfrom時間に関して、toの時間を15分増やすことでした。

jQuery('#datetimepicker' + COUNT + '1' + ' input').on('change', function() 
     { 
      var time = jQuery(this).pickatime('picker').get('select'), 
       hour = time.hour, 
       minute = time.mins, 
       count = jQuery(this).data('count'), 

      picker = jQuery('#datetimepicker' + count + '2' + ' input').pickatime('picker'); 
      picker.set('enable', true); 

      if (picker.get('value') != '') 
      { 
       if (picker.get('select').time <= time.time) 
       { 
        picker.set('select', time.time + 15); 
       } 
      } 
      else 
      { 
       picker.set('select', time.time + 15); 
      } 

      picker.set('disable',[{from: [7, 0], to: [hour, minute]}]); 

      picker.render; 
     }); 

問題を修正することになった私のコードは、これはこれでいくつかの時間を扱う他の誰を節約できます願っています。 :)

関連する問題