【问题标题】:jQuery datepicker input not loosing focus on chromejQuery datepicker 输入不会失去对 chrome 的关注
【发布时间】:2012-11-18 00:39:48
【问题描述】:

我有一个使用 jQuery UI 日期选择器的输入,在选择日期选择器关闭的日期后,我进行 ajax 调用以取回一些数据并刷新数据网格。

不知何故,在数据网格完成刷新日期选择器自动打开之后。我假设输入永远不会失去焦点,并且用于日期选择器触发器。这只发生在 chrome 中。有没有办法阻止这种情况发生?

我尝试在关闭日期选择器时强制使用 .blur(),但没有成功

$(".datePickerEnable").datepicker({
            dateFormat:"dd-mm-yy",
            changeMonth: true,
            changeYear: true,
            dayNames: [ "Domingo", "Segunda-feira", "Terça-feira", "Quarta-feira", "Quinta-feira", "Sexta-feira", "Sabado" ],
            dayNamesMin: [ "Dom", "Seg", "Ter", "Qua", "Qui", "Sex", "Sab" ],
            monthNames: [ "Janeiro", "Fevereiro", "Março", "Abril", "Maio", "Junho", "Julho", "Agosto", "Setembro", "Outubro", "Novembro", "Dezembro" ],
            onClose: function() {
                this.blur();
            }
        })

在数据网格刷新后执行document.activeElement 表明输入仍然是焦点。

【问题讨论】:

  • 您是否尝试过 onSelect 而不是 onClose ?
  • datagrid 是否存在 onRefresh 类型?把焦点放在那里
  • 我们有没有可能在这里得到一个 jsfiddle?
  • 另外,我相信您在 Sábado 中错过了一个 ´?

标签: jquery focus jquery-ui-datepicker


【解决方案1】:

在 formUtils.js 中注释 5736 到 5739 行。

【讨论】:

  • 我相信这是解决 OP 问题的最佳方法。
【解决方案2】:

尝试使用jQuery的focus方法将焦点设置到另一个元素:

$('#target').focus();

【讨论】:

  • 我已经尝试过聚焦最近的输入,但没有成功。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2019-10-15
  • 2022-06-12
  • 2021-08-03
  • 2020-03-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多