2015-06-11 5 views
2

Я использую datejp. Я хочу выбрать несколько дат datepicker, перетащив их.выберите несколько дат, перетащив даты datepicker

Для этого я попытался сделать календарные даты перетаскиваемыми. Я взял ссылку здесь https://docs.sencha.com/extjs/5.1/core_concepts/drag_drop.html и написал ниже упомянутый код.

var calendarDate = Ext.get('DatePickerSchedule').select('td'); 
     Ext.each(calendarDate.elements, function(el) { 
      var dd = Ext.create('Ext.dd.DD', el, 'datesDDGroup', { 
       isTarget: true 
      }); 
      //Apply the overrides object to the newly created instance of DD 
      Ext.apply(dd, window.overrides); 
     }); 

Но, похоже, что это не работает. Пожалуйста, предложите, что мне не хватает.

ответ

2

Отъезд Previously Answered Question. Там есть скрипка, которая демонстрирует, как реализовать мультивыбор на сборщике даты. Он не использует перетаскивание, но может быть подходящим решением для ваших нужд.

EDIT:

Так что этот вопрос действительно меня интересует, как вы могли бы идти о решении этого. Таким образом, у меня была игра и создавался пользовательский подборщик дат, который расширяет датпикер ExtJS, но обеспечивает поддержку перетаскивания для нескольких выборов, используя мышь, которую я предложил в своем комментарии.

скрипку можно найти здесь DraggableDatePicker

Одним из улучшений вы можете сделать это, чтобы сделать компонент в курсе строк и значений в строках, так что при наведении курсора мыши на новую строку все даты на этой строке (до того, который находится в данный момент с помощью мыши). Мое решение заботится только о отдельных клетках, которые перетаскиваются.

+0

Мне нужно выбрать даты, перетаскивая их, не нажимая отдельные даты. Вне курса задается выбор нескольких дат, но это не является функциональной необходимостью. Функционально он должен выбирать даты, перетаскивая их. – prashant

+0

OK Я вижу. Не заглядывая в исходный код datepicker, я чувствую, что вам может понадобиться расширить класс и добавить слушателей для _mousedown_, _mouseover_ и _mouseup_, чтобы получить необходимую функциональность. И когда события _mousemove_ запускаются после начального _mousedown_ на элементе, вы можете установить соответствующий элемент в выбранный. –

+0

спасибо за ваше время, которое вы посвятили проблеме. ваше решение выглядит очень красиво – prashant

Смежные вопросы