jQuery AJAX 成功回调函数定义在 .ajax() 块之外
在 jQuery 中,您可以使用 $. ajax() 方法。通常,成功回调函数是在 .ajax() 块中定义的。但是,可以在块外部定义回调。
在 .ajax() 块外部定义回调函数
在 .ajax() 块外部定义成功回调。 ajax() 块中,您应该返回 $.ajax() 的结果,如下所示:
<code class="javascript">function getData() { return $.ajax({ url: 'example.com', type: 'GET' }); }</code>
然后,您可以使用 .done() 方法在 .ajax() 调用之外添加回调:
<code class="javascript">getData().done(handleData);</code>
处理数据
handleData函数可以定义如下:
<code class="javascript">function handleData(data) { alert(data); // Do other stuff }</code>
传递给handleData函数的数据是从服务器返回的数据。
在 .ajax() 块之外定义回调的好处
在 .ajax() 块之外定义回调提供了几个好处好处:
示例
以下代码演示了如何使用此技术:
<code class="javascript">// A trivial timer for demo purposes var timer = $.Deferred(); setTimeout(timer.resolve, 5000); // Add a `done` and an `error` handler to the AJAX call var ajax = getData().done(handleData).fail(error); // Wait for both the AJAX call and the timer to finish $.when(timer, ajax).done(function() { // Both operations have finished }); // Add an additional `done` handler to the AJAX call ajax.done(function() { // Can be added even if the AJAX call has already finished });</code>
此技术对于将 AJAX 功能与后续操作解耦以及同步多个异步操作非常有用。
以上是如何在 .ajax() 块之外定义 jQuery AJAX 成功回调函数?的详细内容。更多信息请关注PHP中文网其他相关文章!