asp.net - 如何引用匿名 JavaScript 函数?

标签 asp.net javascript jquery

我正在尝试使用 jQuery“附加”事件函数调用页面方法,其中我喜欢使用闭包将事件目标保持在本地,如下所示,但页面方法调用声明了几个“错误”函数,我想对所有这些都使用一个函数。如果在下面的代码中,我处理了一个错误但没有成功,我如何使用我的单个匿名处理程序来处理所有 3 个错误函数?

        $(":button").click(function () {
            var button = this;
            PageMethods.DoIt(
                function (a, b, c) {
                    alert(button);
                });
        });

此示例为成功回调传递一个匿名函数。只有其中之一。如果我传递一个错误回调,我如何对所有 3 个错误回调使用“function (e, c, t)”?

添加:我在这里想做的是每当用户单击切换按钮(复选框)时触发 AJAX 调用,但为了提高响应能力,我想立即切换按钮状态,并且仅在以下情况下“取消切换”它: AJAX 调用失败。

现在,在我的客户端 click() 事件处理程序中,我想在 click()' 范围内使用匿名函数,以便这些函数可以访问this事件参数,但我不想为 onTimeoutonError 和 'onAbort 参数“声明”三个函数PageMethods.MyFunction 函数的。如果我在点击处理程序之外声明一个命名函数,它就无法再访问 click() 事件处理程序的“this”参数。

最佳答案

如果您的目标是使该函数脱离全局范围,请使用 the module pattern :

(function() {
  function asplode() {
    alert('Your head asplode.');
  }

  $('body').click(asplode);
})();

关于asp.net - 如何引用匿名 JavaScript 函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2641132/

相关文章:

jquery - 如何在导航栏右侧正确显示图像?

asp.net - MVC + 表单 : Post error

javascript - 无法使用ajax从javascript调用c#方法

c# - 使用 Web 服务检索大数据时出现内存不足异常

javascript - 使用 mongoskin 对 mongodb 进行单个查询或多个查询???

javascript - 单击 ajax 后无法重新加载 fullcalendar div

javascript - 为克隆输入提供输入 'name' 属性,该属性位于列表内

javascript - imageButton 的服务器标记格式不正确

javascript - 当页面没有 ScriptManager 时跳过 JavaScript 'Sys.WebForms..' 函数

jQuery 如果存在