Javascript jQuery加载函数后,jQuery UI自动完成不起作用

Javascript jQuery加载函数后,jQuery UI自动完成不起作用,javascript,jquery,jquery-ui,autocomplete,Javascript,Jquery,Jquery Ui,Autocomplete,我正在尝试使用jQuery UI自动完成函数,在我用jQuery load()函数替换数据之前,它工作得非常好。在这之后,一切都不起作用了——这里是完全的寂静 我的html代码如下所示: <div class="ui-widget"> <label for="search">Search: </label> <input id="search"> </div> } load()成功返回后,我调用en

我正在尝试使用jQuery UI自动完成函数,在我用jQuery load()函数替换数据之前,它工作得非常好。在这之后,一切都不起作用了——这里是完全的寂静

我的html代码如下所示:

<div class="ui-widget">
         <label for="search">Search: </label>
         <input id="search">
</div>
}

load()成功返回后,我调用enableautocomlete()再次将autocomplete事件与所选元素绑定。我在这个论坛的某个地方读到,我应该这样做。但从这一次起,一切都没有发生。键入后不会调用自动完成。我在控制台中调试了它,并在时间轴(Chrome开发工具)中记录了所有内容,正如我所说的,完全没有声音。 有人知道为什么吗???你能试试这个吗

    function _debugResponse(respData,txt,xhr){console.log('Debug server response'); console.log(respData);}

function enableAutocomplete() {
  console.log('enableAutocomplete called');
  $("#search").autocomplete({
    source:    function (request, response) {
     console.log('autocomplete.source method called');
     $.getJSON("/Controller/search", { term: request.term }, _debugResponse );
    },
    minLength: 2,
    select:    function (event, ui) { console.log(event) }
  });
}                            

enableAutocomplete();

然后在开发人员控制台上发布您得到了什么?

您能展示更多的代码吗?比如什么时候调用enableAutocomplete?您好,谢谢您的回复:)我调用enableAutocomplete()两次:一次在$(function(){})中,第二次在load()函数的成功部分。请问“/Controller/search”做什么?尝试修复并向我们展示问题所在。好吧,这就是对服务器端操作的调用。它只返回稍后显示的JSON格式的数据。这部分很好用。问题在于前端:为什么从未调用$.getJSON。为什么只有在我首先调用load()函数之后才会发生这种情况。您好,我尝试过这样做,下面是控制台中显示的内容:加载()之前:enableautomlete调用的函数。js:134 autocomplete.source方法调用的函数。js:150调试服务器响应函数。js:518[Object]函数。js:518和加载()之后:enableautomlete调用的函数。因此,同样-从未调用源方法:/I我对上面的代码做了一些小修改。1) 当您键入至少2个字符时,将调用source方法,此时您可以检查网络控制台以查看调用的内容。2) 您是否在服务器端处理“术语”?3) 是否返回JSON对象?4) 你能告诉我你在网络控制台上得到了什么吗?
    function _debugResponse(respData,txt,xhr){console.log('Debug server response'); console.log(respData);}

function enableAutocomplete() {
  console.log('enableAutocomplete called');
  $("#search").autocomplete({
    source:    function (request, response) {
     console.log('autocomplete.source method called');
     $.getJSON("/Controller/search", { term: request.term }, _debugResponse );
    },
    minLength: 2,
    select:    function (event, ui) { console.log(event) }
  });
}                            

enableAutocomplete();