problem when cloning jQuery UI datepicker
Posted
by h3
on Stack Overflow
See other posts from Stack Overflow
or by h3
Published on 2010-03-14T03:14:15Z
Indexed on
2010/03/14
3:25 UTC
Read the original article
Hit count: 298
I have a div in which there is a datepicker. I use something like this to clone it:
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();
This is a stripped down version of my code. It works and the calendar shows up as expected where it is expected .. but when a date is clicked, the previous datepicker's value gets updated.. (the one from which it was cloned).
I've tried to destroy the (inexisting) instance before like this:
newDiv.find('input.datefield').datepicker('destroy').datepicker();
No luck ..
I've checked how it keeps track of instances and manually cleared the data like this:
newDiv.find('input.datefield').data('datepicker', false).datepicker('destroy').datepicker();
Still no luck.
What I don't understand is that only the date selection behavior is buggy, everything else works as expected.
I really don't know what else to check now ..
© Stack Overflow or respective owner