2016-06-24 154 views
0

我需要帮助,试图使jQuery-ui自动完成功能的工作。我的代码如下:jquery-ui autocomplete似乎没有触发?

<script src="/js/jquery.min.2.2.4.js"></script> 
<link rel="stylesheet" href="/js/jquery-ui/jquery-ui.min.css"> 
<script src="/js/jquery-ui/jquery-ui.min.js"></script> 
<script type="text/javascript"> 
$(function() { 
    $('#sku').autocomplete({ 
     source: function(request, response){ 
      $.ajax({ 
       url: '/api.php', 
       type: 'POST', 
       data: { 
        function: 'skuAutocomplete', 
        data: { 
         skuAutocomplete: request 
        } 
       }, 
       error: function() { 
        alert('An error occurred connecting to server. Please check your network'); 
       }, 
       dataType: 'json', 
       success: function(json) { 
        if (json.status) { 
         response(json.data.skuAutocomplete); 
        }else{ 
         alert(json.message); 
        } 
       } 
      }); 
     }, 
     minLength: 3 
    }); 
}); 
</script> 
<input type="text" name="sku" id="sku"> 

当我开始在文本框中,我没有得到任何网络请求,或在控制台日志的任何错误。

我已经检查:

1:正在加载所有的jQuery的功能,并没有文件404

2:对于未产生错误加载页面。

我不确定接下来该去哪里,我不知道如何触发这个函数,它来自快速入门指南。任何帮助深表感谢。

+0

你的代码似乎是罚款。出于某种原因,我不得不将autocomplete函数封装在另一个函数中,并调用该函数使其工作,如下所示:'function runAutocomplete(){// your autocomplete code}''runAutocomplete();' – Guillaume

+0

stick runAutocomplete?在输入标签中的on-change事件中? – user1955162

+0

不,你只需要在你的javascript – Guillaume

回答

1

我遇到同样的问题,这似乎解决了这个问题对我来说:

function runAutocomplete(element) { 
$(element).autocomplete({ 
    source: function(request, response){ 
     $.ajax({ 
      url: '/api.php', 
      type: 'POST', 
      data: { 
       function: 'skuAutocomplete', 
       data: { 
        skuAutocomplete: request 
       } 
      }, 
      error: function() { 
       alert('An error occurred connecting to server. Please check your network'); 
      }, 
      dataType: 'json', 
      success: function(json) { 
       if (json.status) { 
        response(json.data.skuAutocomplete); 
       }else{ 
        alert(json.message); 
       } 
      } 
     }); 
    }, 
    minLength: 3 
}); 
} 

runAutocomplete("#sku"); 
相关问题