jQuery UI Autocomplete response事件

  • Post category:jquery

jQuery UI 的 Autocomplete 组件提供了一个 response 事件,该事件在 Autocomplete 菜单中的选项列表被更新后触发。在本教程中,我们将详细介绍 Autocomplete 的 response 事件的使用方法。

response 事件基本语法如下:

$( ".selector" ).autocomplete({
  response: function( event, ui ) {
    // 处理程序代码
  }
});

其中,”.selector” 是 Autocomplete 的 CSS 选择器。

以下两个示例:

示例一:使用 Autocomplete 的 response 事件处理程序

$( "#my-autocomplete" ).autocomplete({
  source: function( request, response ) {
    $.ajax({
      url: "search.php",
      dataType: "json",
      data: {
        term: request.term
      },
      success: function( data ) {
        response( data );
      }
    });
  },
  response: function( event, ui ) {
    console.log( "Autocomplete options were updated." );
  }
});

这将创建一个名为 my-autocomplete 的 Autocomplete,并将其绑定到一个使用 AJAX 请求从 search.php 文件获取数据的源。然后,使用 response 事件处理程序在控制台中输出一条消息,当 Autocomplete 菜单中的选项列表被更新时触发。

示例二:使用 Autocomplete 的 response 事件处理程序和 open 事件

$( "#my-autocomplete" ).autocomplete({
  source: function( request, response ) {
    $.ajax({
      url: "search.php",
      dataType: "json",
      data: {
        term: request.term
      },
      success: function( data ) {
        response( data );
      }
    });
  },
  response: function( event, ui ) {
    console.log( "Autocomplete options were updated." );
  },
  open: function( event, ui ) {
    console.log( "Autocomplete menu was opened." );
  }
});

这将创建一个名为 my-autocomplete 的 Autocomplete,并将其绑定到一个使用 AJAX 请求从 search.php 文件获取数据的源。然后,使用 response 事件处理程序在控制台中输出一条消息,当 Autocomplete 菜单中的选项列表被更新时触发。使用 open 事件处理程序在控制台中输出一条消息,当 Autocomplete 菜单打开时触发。

总结:

jQuery UI 的 Autocomplete 组件提供了一个 response 事件,该事件在 Autocomplete 菜单中的选项列表被更新后触发。要使用 response 事件,需要将其用于 Autocomplete 的 jQuery 对象即可。可以在设置 response 事件的同时设置其他选项,例如 source 和 open 事件。