首页 > web前端 > js教程 > 正文

是否可以在外部定义 jQuery AJAX 成功回调函数?

Barbara Streisand
发布: 2024-10-18 19:27:03
原创
940 人浏览过

Is It Possible to Define jQuery AJAX Success Callback Functions Externally?

为 jQuery AJAX 定义成功回调函数

使用 jQuery AJAX 从服务器检索数据时,开发人员通常在.ajax() 块。但是,是否可以在外部定义回调函数?

外部回调函数

提供的代码片段尝试在 .ajax() 之外定义成功回调函数block:

var dataFromServer;  //declare the variable first

function getData() {
    $.ajax({
        url : 'example.com',
        type: 'GET',
        success : handleData(dataFromServer)
    })
}

function handleData(data) {
    alert(data);
    //do some stuff
}
登录后复制

建议:使用延迟对象

虽然代码片段在技术上可能有效,但不再建议在 .ajax 之外定义成功回调() 堵塞。相反,使用延迟对象:

function getData() {
    return $.ajax({
        url : 'example.com',
        type: 'GET'
    });
}

function handleData(data /* , textStatus, jqXHR */ ) {
    alert(data);
    //do some stuff
}

getData().done(handleData);
登录后复制

延迟对象提供了几个优点:

  • 解耦:它们将回调处理与 AJAX 处理分开,从而更容易维护.
  • 多个回调:延迟对象支持添加多个成功和错误回调。
  • 同步:它们可以轻松同步多个异步事件,例如作为 AJAX 调用和计时器。

使用延迟对象可以提供更大的灵活性和对 AJAX 回调处理的控制,使其成为更强大和更现代的方法。

以上是是否可以在外部定义 jQuery AJAX 成功回调函数?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!