Jquery 自动完成更改事件未设置指定输入的焦点

Jquery Autocomplete Change Event Not Setting Focus Of Specified Input

本文关键字:设置 输入 焦点 事件 Jquery      更新时间:2023-09-26

我确实尝试了我能想到的一切,但无法弄清楚为什么这没有将焦点设置为我指定的输入。

im 尝试做的是,每当从列表中选择自动完成项目时,它都应该将焦点设置为 #areyoufrom 输入

可以在此处找到该页面 http://mysmart.travel 自动完成功能按预期工作,但不会更改焦点。

这是我用来触发更改事件的代码,它很好地记录到控制台,但没有将焦点设置在其他输入上。

$( "#areyourfrom" ).autocomplete({
   change: function(event, ui) { 
     $("#areyourgoing").focus();
     console.log(change);
   }
});

数据是从外部源提取的并且工作正常,但由于某种原因我收到错误

TypeError: this.source is not a function

我不确定这是否与自动完成没有将焦点更改为其他输入有关。

您的代码未定义源属性,因此为 NULL。 检查文档并定义您的来源。 否则,它甚至无法访问您的代码。

为了看到这一点,在Chrome中,我激活了开发人员工具。 选择了暂停异常的选项,等待异常,检查堆栈跟踪,由于它与您呈现的内容没有任何关系,我检查了源代码以查找 jquery-ui.js第 6249 行将值设置为 null 这使我排队,因为它必须是可覆盖的设置......这让我想到了文档。

是的,寻找去哪里有点迂回的方式,但这就是野兽的本性! :)