【问题标题】:Jqueryui Autocomplete was working but now it's notJqueryui Autocomplete 可以正常工作,但现在不行
【发布时间】:2014-08-09 07:12:49
【问题描述】:

我尝试使用 Jqueryui 自动完成功能。它工作得很好。但现在不是。这是代码..

输入字段:

   <input class="form-control mandatory" id="name" name="name" placeholder="Enter your name please" type="text" onkeypress="return stop(event);" ondrop="return false;" onpaste="return false;">

这是自动完成的代码

  $(document).ready(function(){
  var name = document.getElementById('name');
            $(name).autocomplete({
                    minLength : 2,
                    source: "getemaillist.php"
                });
            });

我签入了firebug,但是没有GET也没有POST请求。

然后我尝试将 keyup="getdata(this.value)" 添加到输入标签,并在该函数中通过使用 $.post 获取数据并将返回的结果作为源分配给自动完成。我正在以正确的 json 格式获取数据。但我仍然看不到自动完成功能。

我刚刚看到一个对 css/images/ui-bg_highlight-soft_100_eeeeee_1x100.png 文件的获取请求,我认为这是一个自动完成的背景图像。

我做错了什么?

【问题讨论】:

  • 您输入的字符多于 2 个吗?
  • 是的,我做到了,事实上,我可以看到自动完成图像的获取请求,如上所述。
  • 你提供的来源应该是一个数组值而不是php页面。
  • 它可以是一个php页面,只是页面应该返回用json编码的数组,顺便说一下,上面的代码现在可以正常工作了..

标签: javascript jquery css jquery-ui autocomplete


【解决方案1】:

你可以不使用onkeypress事件直接使用,自动补全在onkeypress中自动工作。

使用这个:

$("#name").autocomplete({
                    minLength : 2,
                    source: [
          "ActionScript",
          "AppleScript",
          "Asp",
          "BASIC",
          "C",
          "C++",
          "Clojure",
          "COBOL",
          "ColdFusion",
          "Erlang",
          "Fortran",
          "Groovy",
          "Haskell",
          "Java",
          "JavaScript",
          "Lisp",
          "Perl",
          "PHP",
          "Python",
          "Ruby",
          "Scala",
          "Scheme"
            ]
                });
            });

我对你的源数据有疑问source: "getemaillist.php" 请确保分配的数据格式正确。

作为参考使用这个Link

希望这可能会有所帮助。

【讨论】:

  • 感谢您的帮助。但它现在工作正常,我仍在使用我上面给出的代码。不过,感谢您的帮助。
  • 欢迎 YiiFighter :)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-02-06
  • 2015-03-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多