未捕获的TypeError:对象[object Object]没有方法'autocomplete'

Nea*_*alR 5 jquery jquery-ui jquery-autocomplete jquery-ui-autocomplete

我试图autocomplete在ASP MVC 3网页上使用jQuery 功能.不幸的是我一直收到这个错误.我查看了我正在使用的1.9.2版,它确实有自动完成方法.但是,我对jQuery完全不熟悉,并且不确定标头中是否有太多声明,冲突的库或缺少的库.

以下是视图中的代码

<link href="../../Content/jquery-ui-1.9.2.custom.css" rel="stylesheet">

<script src="http://code.jquery.com/jquery-1.8.3.js" type="text/javascript"></script>
<script src="http://code.jquery.com/ui/1.9.2/jquery-ui.js" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/jquery.validate.min.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/jquery.validate.unobtrusive.min.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/jquery.unobtrusive-ajax.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/jquery.tablesorter.min.js")" type="text/javascript"></script>

<script type="text/javascript" src="http://code.jquery.com/jquery-1.6.4.js"></script>
<script type="text/javascript">

    $(document).ready( function() {
      $('#BankName').autocomplete('@Url.Action("GetBanks", "AgentTransmission")', {
          dataType: 'json',
          parse: function(data) {
              var rows = new Array();
              for(var i=0; i<data.length; i++){
                  rows[i] = { data:data[i], value:data[i].SignalName, result:data[i].SignalName };
              }
              return rows;
          },
          formatItem: function(row, i, n) {
              return row.SignalName + ' - ' + row.Description;
          },
          width: 300,
          mustMatch: true,
      });
    });
Run Code Online (Sandbox Code Playgroud)

完整的HTML可以在这里找到:http://jsfiddle.net/qpvBv/

ick*_*fay 9

您正在使用多个版本的jQuery.只包含一个并将其放在所有脚本的顶部.

包含多个版本的jQuery不起作用,因为:

  1. 首先,你包括jQuery 1.8.3.这没关系(ish).
  2. 然后你包括jQuery UI 1.9.2.这也没关系,虽然我可能会确保jQuery和jQuery UI的版本匹配.jQuery UI 1.9.2安装在1.8.3 jQuery对象上.
  3. 然后包含更多插件,也安装在1.8.3 jQuery对象上.
  4. 然后你包括jQuery 1.6.4.除了它已经过时之外,它jQuery用自己的1.6.4 jQuery对象覆盖1.8.3 对象,用它覆盖旧对象上的所有插件.