如何阻止jQuery UI Date Picker在显示时给出输入焦点?

时间:2014-03-25 06:02:19

标签: jquery-ui focus jquery-ui-datepicker

jQuery日期选择器的默认行为在显示日期选择器时给出输入字段焦点。在移动设备(例如iPhone)上,这种行为是不合需要的,因为它会向上滑动键盘并遮挡日期选择器。

我目前正在解决此问题,方法是在显示日期选择器时禁用输入字段,并在关闭时重新启用它。这有效,但似乎不太理想。

HTML:

<input type="text" id="start-date" class="date-input" />
<button id="start-date-calendar">Go</button>

使用Javascript:

$(document).ready(function () {
    $(".date-input").datepicker({
        numberOfMonths: 2,
        showButtonPanel: true,
        showAnim: 'slideDown',
        showCurrentAtPos: 1,
        stepMonths: 2,
        beforeShow: function (input, datePicker) {
            input.disabled = true;
        },
        onClose: function (dateText, datePicker) {
            this.disabled = false;
        }
    });
    $(".date-input").off();
    $("#start-date-calendar").click(function () {
        $('#start-date').datepicker("show");
    });
});

这是一个有效的example

是否可以直接停止焦点?

0 个答案:

没有答案