【问题标题】:jQuery - Autocomplete - keystroke errorsjQuery - 自动完成 - 击键错误
【发布时间】:2012-01-18 19:41:58
【问题描述】:

我在应用程序的文本框中添加了自动完成功能 -

    $( "#cplPageContent_ctlInputSrch_txtSearch" ).autocomplete({
        source: aAvailableTags
    });

aAvailableTags 是一个逗号分隔的列表。

我包括 - http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.jshttp://ajax.googleapis.com/ajax/libs/jqueryui/1.8.9/jquery-ui.min.js

每次我在此文本框中输入内容时,都会收到 JScript 运行时错误 - 'PAGE UP' 为 null 或不是对象。 -要么- 'PAGE DOWN' 为 null 或不是对象。

有一系列大约 6-8 个错误。什么会导致这些错误?

【问题讨论】:

标签: jquery jquery-ui


【解决方案1】:

试试这个:

$("#cplPageContent_ctlInputSrch_txtSearch").autocomplete({
    source: $.makeArray(aAvailableTags)
});

【讨论】:

  • 所有这些选项都有意义。我尝试了每一个,但我仍然得到同样的错误。就像我包含的其中一个 js 库有问题一样。这可能吗?
  • 听起来好像发生了其他事情。尝试将自动完成及其源代码放入 jsFiddle 并删除所有其他变量。
  • 是的,这行得通。文本框似乎正确加载了自动完成选项。
【解决方案2】:

确保source 是一个数组。

所以:

aAvailableTags = ['namelast', 'namefirst', 'email'];

aAvailableTags = [namelast, namefirst, email];

如果 namelastnamefirstemail 已定义。

Here 是工作代码。

【讨论】:

  • 所以在我的代码中,我可以将源更改为 - source: aAvailableTags.split(',') 吗?
  • @duckmite 如果aAvailableTags 是一个包含逗号分隔值的字符串,那么是的,完全正确:)。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2013-09-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-04-02
  • 1970-01-01
相关资源
最近更新 更多