javascript - jquery中如何提取匿名函数

标签 javascript jquery

我有一个 jquery 函数 keydown() ,如下所示。如何提取内部函数 (e){},并让其他元素调用它或将其组合到其他函数?

$("tr input[id*='txtNum']").keydown(function(e) {
    if ((e.shiftKey || (e.keyCode < 48 || e.keyCode > 57)) && (e.keyCode < 96 || e.keyCode > 105)) {
        e.preventDefault();
    }
});

最佳答案

是的,有一个 jQuery 函数可以完成这类事情。

看看如何使用.triggerHandler('keydown')。这将返回 jQuery 对象的触发器处理程序对象。触发器处理程序有一个 handleObj 属性,它本身有一个 handler,它是您分配的匿名函数。

就您而言, $("tr input[id*='txtNum']").triggerHandler('keydown').handleObj.handler 应该为您提供匿名函数。

了解更多信息 http://www.w3schools.com/jquery/event_triggerhandler.asp

关于javascript - jquery中如何提取匿名函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31613555/

相关文章:

javascript - Angular 6 [ngClass] 无法在 component.js 中使用 bool 值

javascript - 如何向 highstock 图表添加辅助轴?

javascript - 字符串相等时返回 false

javascript - 如何将表格内的表单转换为JSON

javascript - 将已选中复选框的表行提取到对象数组中

javascript - 我不明白为什么 .splice() 在这里返回一个空数组

javascript - React - Firebase - RecaptchaVerifier 不是构造函数

javascript - 如何检查已加载的图像是否已加载到 JavaScript 中?

对象数组和 indexOf 的 Javascript 奇怪之处

javascript - Yii2:导航到表单中的另一个选项卡时自动保存表单