Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jquery-ui/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery ui 如果未找到任何内容,则从jquery ui自动完成中删除微调器_Jquery Ui_Autocomplete - Fatal编程技术网

Jquery ui 如果未找到任何内容,则从jquery ui自动完成中删除微调器

Jquery ui 如果未找到任何内容,则从jquery ui自动完成中删除微调器,jquery-ui,autocomplete,Jquery Ui,Autocomplete,我想从支持jquery ui自动完成的textfield中删除微调器(显示正在加载的图片)。 由于没有“源未返回结果”的事件,因此a无法触发此事件 $( "#q" ).autocomplete({ source: "${createLink(mapping:'qsearch')}", minLength: 2, select: function( event, ui ) { foo( ui.item.id ); }, search: function(

我想从支持jquery ui自动完成的textfield中删除微调器(显示正在加载的图片)。 由于没有“源未返回结果”的事件,因此a无法触发此事件

$( "#q" ).autocomplete({
   source: "${createLink(mapping:'qsearch')}",
   minLength: 2,
   select: function( event, ui ) {
      foo( ui.item.id );
   },
   search: function( event, ui ) {
      bla();
   }
});

您可以编辑CSS并删除微调器


$(“具有微调器的对象”).removeClass(“ui自动完成加载”)

这是已知的jQuery UI未来版本的开放增强

将不得不等待和/或使用解决方法(如从服务器发送特殊响应并在打开事件中处理此情况)。

根据我的回答改编,添加以下代码以在搜索完成后执行(即使结果为0):

该代码将触发一个事件(
autocompletesearchcomplete
),然后您可以绑定到该事件:

$("#q").bind("autocompletesearchcomplete", function(event, contents) {
    /* Remove spinner here */
});

希望这能有所帮助。

如果您使用的是较旧版本的jQuery ui,正确的答案是使用类
ui自动完成加载
,该类在请求/响应运行时被添加和删除。

从jQuery ui v1.9开始,您可以执行以下操作:

$( "#q" ).autocomplete({
  source: "${createLink(mapping:'qsearch')}",
  select: function( event, ui ) {
    foo( ui.item.id );
  },
  search: function( event, ui ) {
    $( "#spinner" ).show();
  },
  response: function( event, ui ) {
    $( "#spinner" ).hide();
  }
});
$( "#q" ).autocomplete({
  source: "${createLink(mapping:'qsearch')}",
  select: function( event, ui ) {
    foo( ui.item.id );
  },
  search: function( event, ui ) {
    $( "#spinner" ).show();
  },
  response: function( event, ui ) {
    $( "#spinner" ).hide();
  }
});