$(...)。自动完成不是一个功能

时间:2013-09-09 10:42:47

标签: javascript jquery autocomplete

在jquery中使用自动完成。我正面临一个问题

  

TypeError:$(...)。autocomplete不是函数

我包含了所有必要的脚本文件。我无法理解我犯了错误的地方。我该如何解决这个问题?

<script type="text/javascript" src="<?php echo base_url();?>assets/js/jquery-1.9.1.js" ></script>
<script type="text/javascript" src="<?php echo base_url();?>assets/js/jquery-1.7.1.min.js" ></script>
<script type="text/javascript" src="<?php echo base_url();?>assets/js/jquery.hashchange.min.js" ></script>
<script type="text/javascript" src="<?php echo base_url();?>assets/js/jquery.easing.1.3.js" ></script>
<script type="text/javascript" src="<?php echo base_url();?>assets/js/jquery.tools.min.js" ></script>

<script>
$(document).ready(function () {
    $('#namanyay-search-box').keyup(function (e) {
        var searched = $('#namanyay-search-box').val()
        $.getJSON('get_data', 'title=' + searched, function (result) {
            var elements = [];
            $.each(result, function (i, val) {
                elements.push(val.merchant_name)
            })

            $('#namanyay-search-box').autocomplete({
                source: elements
            })
        })
    });

    var indicator = $('#indicator'),
        indicatorHalfWidth = indicator.width() / 2,
        lis = $('#tabs').children('li');

    $("#tabs").tabs("#content section", {
        effect: 'fade',
        fadeOutSpeed: 0,
        fadeInSpeed: 400,
        onBeforeClick: function (event, index) {
            var li = lis.eq(index),
                newPos = li.position().left + (li.width() / 2) - indicatorHalfWidth;
            indicator.stop(true).animate({
                left: newPos
            }, 600, 'easeInOutExpo');
        }
    });
});

</script>

2 个答案:

答案 0 :(得分:2)

您缺少jQuery UI库,包含来自jQuery UI的脚本和css文件

同时删除重复的jquery库。

答案 1 :(得分:0)

下载此http://code.jquery.com/ui/1.10.3/jquery-ui.js并将其放入资源并添加以下代码

  <script type="text/javascript" src="<?php echo base_url();?>assets/js/jquery-ui.js" ></script>