jquery 手册
Ajax
属性(Attributes)
回调对象(Callbacks ..
核心(Core)
CSS
数据(Data)
延迟对象(Deferred o ..
尺寸(Dimensions)
效果(Effects)
事件(Events)
表单(Forms)
文档操作(Manipulati ..
杂项(Miscellaneou ..
位置(Offset)
插件编写(Plugin Aut ..
属性(Properties)
选择器(Selectors)
遍历(Traversing)
工具(Utilities)

Returns: jQueryjQuery .ajaxSend( Function handler(event, jqXHR, ajaxOptions) )

描述:附加一个Ajax请求发送之前要执行的函数 。这是一个Ajax Event.
  • version added: 1.0
  • .ajaxSend( Function handler(event, jqXHR, ajaxOptions) )
  • handler(event, jqXHR, ajaxOptions) 被调用的函数。

每当一个Ajax请求将被发送之前,jQuery触发ajaxSend 事件。所有已注册 .ajaxSend() 事件处理程序将一次全部执行。

为了观察该方法的行为,我们建立一个最基本的ajax请求:

<div class="trigger">Trigger</div>
<div class="result"></div>
<div class="log"></div>

我们可以将事件处理程序附加给任何元素:

$('.log').ajaxSend(function() {
  $(this).text('Triggered ajaxSend handler.');
});

现在,我们用jQuery方法发送一个Ajax请求:

$('.trigger').click(function() {
  $('.result').load('ajax/test.html');
});

当用户点击按钮触发Ajax请求之前,显示日志信息。

注意: 因为 .ajaxSend() 作为一个jQuery对象实例的方法来实现,我们可以在回调函数中使用this关键字指向已选择的元素。

无论什么Ajax请求开始之前,所有的 ajaxSend事件处理程序将会被调用。

$('.log').ajaxSend(function(e, jqxhr, settings) {
  if (settings.url == 'ajax/test.html') {
    $(this).text('Triggered ajaxSend handler.');
  }
});

Examples:

Example:

当一个Ajax请求发送之前显示一条信息。
$("#msg").ajaxSend(function(evt, request, settings){
        $(this).append("<li>Starting request at " + settings.url + "</li>");
      });