自动完成不适用于jQuery v1.8.3(版本)

时间:2013-12-29 10:56:07

标签: javascript jquery jquery-ui autocomplete jquery-widgets

我的jQuery Autocomplete适用于jQuery 1.9版但是当我使用jQuery v1.8.3时它会显示错误:

TypeError: $(...).autocomplete is not a function

由于其他功能也令人不安,我无法将我的jQuery版本从v1.8.3更改为1.9。如何在这个jQuery v1.8.3版本中使用jQuery自动完成?我正在谈论这个Autocomplete

这是我的代码:

<script src="<?php bloginfo('template_url');?>/library/js/jquery_1.9.js"></script>
<script src="<?php bloginfo('template_url');?>/js/UI/ui/jquery-ui.js"></script>
<link rel="stylesheet" href="<?php bloginfo('template_url');?>/js/UI/themes/base/jquery-ui.css">


function autoComplete(obj)
{
    var term_val = obj.value
    var findin   = "";
    if(term_val == "")
    {
        console.log(term_val);
        $("#"+obj.id).val("");
        $("#ui-id-1").remove();
    }
    else
    {
        $.ajax({
              type:"POST",
              url:"<?php echo bloginfo('template_url')?>/ajax.php", data:"&term_val=" + term_val,
              dataType:"json",
              success:function (data) {
              var availableTags = data;

                  $( "#"+obj.id ).autocomplete({
                      minLength: 0,
                      source: availableTags
                  });
              }
          });


    }

}


<input type="text" name = "quick_search_new" id="quick_search_new" onkeyup="autoComplete(this)" autocomplete="off"/>

当我使用1.8版本的上述jQuery文件时,它无法显示错误:

<script src="<?php bloginfo('template_url');?>/library/js/jquery_1.8.js"></script>
    <script src="<?php bloginfo('template_url');?>/js/UI/ui/jquery-ui.js"></script>
    <link rel="stylesheet" href="<?php bloginfo('template_url');?>/js/UI/themes/base/jquery-ui.css">

1 个答案:

答案 0 :(得分:0)

我通过将Jquery Ui版本从jQuery UI - v1.10更改为jQuery UI - v1.8.24来解决我的问题。它的工作正常。谢谢大家

<script src="<?php bloginfo('template_url');?>/js/UI/ui/jquery-ui.js"></script> <!-- Version  v1.10 -->

替换为

<script src="<?php bloginfo('template_url');?>/js/UI/ui/jquery-ui.js"></script> <!-- Version  v1.8.24 -->

现在工作正常。