У меня есть div, в котором есть datepicker. Я использую что-то подобное для клонирования:
mydiv = $('#someDiv');
// works fine so far
mydiv.find('input.datefield').datepicker();
// clone without the events and insert
newDiv = myDiv.clone(false).insertAfter(myDiv);
// datepicker won't re-init if this class is present
newDiv.find('.hadDatepicker').removeClass('hadDatepicker');
// reinitialize datepicker
newDiv.find('input.datefield').datepicker();
Это урезанная версия моего кода. Он работает, и календарь отображается так, как ожидалось, где он ожидается.. но когда нажимается дата, обновляется предыдущее значение datepicker.. (тот, из которого он был клонирован).
Я пытался уничтожить экземпляр (inexisting) до этого:
newDiv.find('input.datefield').datepicker('destroy').datepicker();
Не повезло..
Я проверил, как он отслеживает экземпляры и вручную очищает данные следующим образом:
newDiv.find('input.datefield').data('datepicker', false).datepicker('destroy').datepicker();
По-прежнему не повезло.
Что я не понимаю, так это то, что только поведение выбора даты является ошибкой, все остальное работает так, как ожидалось.
Я действительно не знаю, что еще проверить сейчас.