jquery自动完成无法正常工作

Lan*_*nce 13 jquery autocomplete

有人可以告诉我为什么我的jquery自动完成代码不起作用?

这是我的javascript代码.

<script src="http://code.jquery.com/jquery-latest.js"></script>
<script type="text/javascript" src="http://dev.jquery.com/view/trunk/plugins/autocomplete/lib/jquery.bgiframe.min.js"></script>
<script type="text/javascript" src="http://dev.jquery.com/view/trunk/plugins/autocomplete/lib/jquery.dimensions.js"></script>
<script type="text/javascript" src="http://dev.jquery.com/view/trunk/plugins/autocomplete/jquery.autocomplete.js"></script>
<script type="text/javascript">
    $(document).ready(function(){
        var data = ["Boston Celtics", "Chicago Bulls", "Miami Heat", "Orlando Magic", "Atlanta Hawks", "Philadelphia Sixers", "New York Knicks", "Indiana Pacers", "Charlotte Bobcats", "Milwaukee Bucks", "Detroit Pistons", "New Jersey Nets", "Toronto Raptors", "Washington Wizards", "Cleveland Cavaliers"];
        $("#seed_one").autocomplete({ source: data });
    });
</script>
Run Code Online (Sandbox Code Playgroud)

这是我的HTML:

<input id="seed_one" type="text" name="seed_one"/><br /> <br />
Run Code Online (Sandbox Code Playgroud)

谢谢,

长矛

Ale*_*aho 20

警告:这是对可追溯到2011年的旧问题的旧答案.建议您使用更新版本的jQuery并查看API参考以获取指导.

您遇到的问题是您使用的是jQuery Autocomplete插件,但您调用它的方式是调用jQuery UI自动完成.

如果您使用jQuery UI Autocomplete,代码本身就可以正常工作,就像您在这个小提琴中看到的那样.如果您使用自动完成插件,则必须将呼叫更改为

$("#seed_one").autocomplete(data);
Run Code Online (Sandbox Code Playgroud)

建议:

  1. 在jQuery UI中使用自动完成而不是自动完成插件.后者已被弃用.
  2. 修复http://dev.jquery.com/view/trunk/plugins/autocomplete/lib/jquery.dimensions.js,此时无法访问

完整的jQuery UI代码

<html>
<head>
    <script type="text/javascript" src="http://code.jquery.com/jquery-latest.js"></script>
    <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.9/jquery-ui.js"></script>
    <script type="text/javascript">
        $(document).ready(function(){
            var data = ["Boston Celtics", "Chicago Bulls", "Miami Heat", "Orlando Magic", "Atlanta Hawks", "Philadelphia Sixers", "New York Knicks", "Indiana Pacers", "Charlotte Bobcats", "Milwaukee Bucks", "Detroit Pistons", "New Jersey Nets", "Toronto Raptors", "Washington Wizards", "Cleveland Cavaliers"];
            $("#seed_one").autocomplete({source:data});
        });
    </script>
</head>

<body>
    <input id="seed_one" type="text" name="seed_one"/>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)

自动完成插件的完整代码:

<html>
<head>
    <script type="text/javascript" src="http://code.jquery.com/jquery-latest.js"></script>
    <script type="text/javascript" src="http://dev.jquery.com/view/trunk/plugins/autocomplete/jquery.autocomplete.js"></script>
    <script type="text/javascript">
        $(document).ready(function(){
            var data = ["Boston Celtics", "Chicago Bulls", "Miami Heat", "Orlando Magic", "Atlanta Hawks", "Philadelphia Sixers", "New York Knicks", "Indiana Pacers", "Charlotte Bobcats", "Milwaukee Bucks", "Detroit Pistons", "New Jersey Nets", "Toronto Raptors", "Washington Wizards", "Cleveland Cavaliers"];
            $("#seed_one").autocomplete(data);
        });
    </script>
</head>

<body>
    <input id="seed_one" type="text" name="seed_one"/>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)

  • 跟踪你错过的内容,写下来并为自己制作一份清单 - 你也必须自己编程. (7认同)

Can*_*ell 5

尝试改变

$("#seed_one").autocomplete({ source: data });
Run Code Online (Sandbox Code Playgroud)

$("#seed_one").autocomplete(data);
Run Code Online (Sandbox Code Playgroud)