Javascript 加载不会在ajax post请求中显示

Javascript 加载不会在ajax post请求中显示,javascript,jquery,ajax,autocomplete,Javascript,Jquery,Ajax,Autocomplete,我在下面的自动完成输入字段中使用jQuery 现在,我想在ajax等待服务器响应时显示一个微调器 我正在使用search:显示加载分区,然后使用open:隐藏它。并最终成功展示结果 $(document).ready(function(){ $('#search_field').keyup(function(){ var search = $(this).val(); if(search != '')

我在下面的自动完成输入字段中使用jQuery

现在,我想在ajax等待服务器响应时显示一个微调器

我正在使用
search:
显示加载分区,然后使用
open:
隐藏它。并最终成功展示结果

 $(document).ready(function(){  
      $('#search_field').keyup(function(){  
           var search = $(this).val();  
           if(search != '')  
           {  
                $.ajax({

                     url: 'search.php',  
                     method: 'POST',  
                     data: {search:search},  

                     search: function()
                     {
                         $('#search_loader').fadeIn('fast', 'swing');
                     },

                     open: function()
                     {
                         $('#search_loader').fadeOut('fast', 'swing');
                     },

                     success: function(data)  
                     {     
                         if(data == '') {
                             $('#autocomplete_result').fadeOut('fast', 'swing');
                         } else {
                             $('#autocomplete_result').fadeIn('fast', 'swing'); 
                             $('#autocomplete_result').html(data); 
                         }
                     }


                });  
           }  
      });  


 }); 
但是
搜索:
打开:
都不起作用


JS的新功能,有人能告诉我我做错了什么吗?

Ajax有以下语法:

$.ajax({
    url: 'your_url',
    method: 'get', // or post
    data: {
        var1 : val1,
        var2 : val2
    },
    before:  function(){

    },
    onComplete: function(){

    },
    success : function(response){

    }
});
没有定义搜索:函数()。如果需要,你可以打电话给他们 before()onComplete()检查此项。没有打开和搜索选项。请尝试使用beforeSend和complete,并将
fadeIn fadeOut
设置为“慢速”


您是否使用jquery插件进行自动完成?@Bommox是的,我是。什么是搜索和打开?似乎您使用jQuery for Ajax,但上面提到的两个函数都不存在!在发送和&
完成
之前将使用什么?我们需要知道您使用的是哪个库。您键入的不是jquery ajax函数。@Bommox我刚刚发布了整个函数。请看一看。这应该是一个评论而不是一个答案,不是吗?我试过了,不起作用。。。我在之前的
中显示了div,并将其隐藏在
onComplete
success:
中。
完成:
之前的
不起作用。什么可能会导致问题?如果您的
#搜索加载程序
未显示在浏览器中,则它正在工作。据我所知,它不是在发送之前的
->
。只要看医生的报告就行了
$(document).ready(function(){  
      $('#search_field').keyup(function(){  
           var search = $(this).val();  
           if(search != '')  
           {  
                $.ajax({    
                     url: 'search.php',  
                     method: 'POST',  
                     data: {search:search},    
                     beforeSend : function()
                     {
                         $('#search_loader').fadeIn('slow', 'swing');
                     },   
                     complete : function()
                     {
                         $('#search_loader').fadeOut('slow', 'swing');
                     },

                     success: function(data)  
                     {     
                         if(data == '') {
                             $('#autocomplete_result').fadeOut('fast', 'swing');
                         } else {
                             $('#autocomplete_result').fadeIn('fast', 'swing'); 
                             $('#autocomplete_result').html(data); 
                         }
                     }
                });  
           }  
      });  
 });