4

2 つの入力で pickadate をセットアップしようとしています。最初の入力で日付が選択されている場合、2 番目の入力が空の場合は、2 番目の入力で選択した日付を設定したいと思います。

まず、最初の入力が選択された後に値を更新しようとしましたが、何かが正しく機能しません。

両方の入力の構成は複雑なので、次のようにしたいと思います。

$( '#event-begin-date,#event-end-date' ).pickadate({
  min: true,
  max: undefined,
    today: '<?php echo T_("Aujourd\'hui"); ?>',
  clear: '<?php echo T_("Effacer"); ?>',
  close: '<?php echo T_("Fermer"); ?>',
  format: '<?php echo T_("dd/mm/yyyy"); ?>',
  firstDay: <?php echo T_("1"); ?>,
  formatSubmit: '<?php echo T_("dd/mm/yyyy"); ?>'
});


$('#event-begin-date').pickadate({
  onSet: function(thingSet) {
    var picker = $input.pickadate('picker');
    picker.set('select', this.component.item.select.pick );
  }
});
4

2 に答える 2

1

このプラグインの作成者である Amsul は、この場合の codepan の例を作成しました: pickadate v3: “from” & “to” dates .

これは、codepen が使用できない場合のコードです。

var from_$input = $('#input_from').pickadate(),
    from_picker = from_$input.pickadate('picker')

var to_$input = $('#input_to').pickadate(),
    to_picker = to_$input.pickadate('picker')


// Check if there’s a “from” or “to” date to start with.
if ( from_picker.get('value') ) {
  to_picker.set('min', from_picker.get('select'))
}
if ( to_picker.get('value') ) {
  from_picker.set('max', to_picker.get('select'))
}

// When something is selected, update the “from” and “to” limits.
from_picker.on('set', function(event) {
  if ( event.select ) {
    to_picker.set('min', from_picker.get('select'))    
  }
  else if ( 'clear' in event ) {
    to_picker.set('min', false)
  }
})
to_picker.on('set', function(event) {
  if ( event.select ) {
    from_picker.set('max', to_picker.get('select'))
  }
  else if ( 'clear' in event ) {
    from_picker.set('max', false)
  }
})
于 2016-05-03T14:59:48.510 に答える