У меня на странице есть два указателя даты jQueryUI.
Они инициализируются, как показано ниже:
jQuery("#departureDate").datepicker({
beforeShow: function() {
getDatesForCalendar("outbound");
},
numberOfMonths: 3,
constrainInput: true,
dateFormat: 'dd/mm/yy',
showButtonPanel: false,
hideIfNoPrevNext: true,
onSelect: function(dateText, inst) { jQuery('#returnDate').datepicker("show"); }
});
jQuery("#returnDate").datepicker({
beforeShow: function() {
getDatesForCalendar("return");
},
numberOfMonths: 3,
constrainInput: true,
dateFormat: 'dd/mm/yy',
showButtonPanel: false,
showOn: "focus",
hideIfNoPrevNext: true,
defaultDate: +1
});
Перед тем, как всплыть, они проверяют, какие даты им доступны, с помощью getDatesForCalendar (), который не содержит кода, который должен скрывать или отображать календари..
Моя проблема в том, что, когда первый календарь вызывает второй (что происходит при выборе), второй календарь мигает в течение секунды, а затем исчезает.Это проблема только для FF / Chrome, она не влияет на IE8.
Я пробовал несколько решений, включая изменение tabindex (теперь его вообще нет), отключение показа в фокусефункциональность, и, наконец, вместо ручного вызова datepicker ("show") я попытался вызвать focus () для поля, к которому он привязан.Ничего не помогло!
Любой совет будет очень оценен.
Большое спасибо,
Джек