jquery datepicker не позволяет фокусироваться на другом поле с помощью onClose или onSelect - PullRequest
1 голос
/ 08 августа 2011

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

Вот точный код, добавляющий то, что вы предложили. Это не работает в Safari и Firefox. Не тестировал с IE. Что он делает, он мигает календарь #duedate и возвращается к #shipdate без календаря.

Видишь здесь что-нибудь не так? Спасибо.

$(function(){
    $("#shipdate" ).datepicker({
    showOn: 'both',
    buttonImage: "/images/calendar.gif",
    buttonImageOnly: true,
    minDate: 0,
    onSelect: function(x,y){
        /*$("#duedate" ).val($("#shipdate" ).val());*/
        $("#duedate" ).focus();
        }
    });

    $("#duedate" ).datepicker({ showOn: 'both', buttonImage: "/images/calendar.gif",
            buttonImageOnly: true,minDate: 0});
});

1 Ответ

2 голосов
/ 08 августа 2011

Используйте onClose вместо onLoad:

onClose: function(x,y){
    $("#duedate").focus();
}

Кажется, есть некоторая проблема с использованием onSelect для этого ... что, вероятно, происходит, когда первый экземпляр закрывает средство выбора даты, в то время как второй экземпляр открывает его - вот почему он "мигает".

Вы можете дополнительно использовать $('#duedate').datepicker("show"); вместо $("#duedate").focus();.

...