首页 > 解决方案 > 返回 jQuery 元素的函数返回未定义

问题描述

我想编写一个 JS 函数,它从给定容器中返回第一个按钮元素,我编写了以下代码,

let getLastWizardFooterBtn = function(wizardContainer) {
  let wizardFooter = $(wizardContainer).find('.wizard-footer');
  return $(wizardFooter).find('button:enabled:last');
};

但问题是,即使我有一个 DOM 元素,这个函数返回 undefined。

以下是 Chrome 开发者工具的截图。

在此处输入图像描述

但是由于我在这一行设置了调试器,并且当我在控制台选项卡中运行相同的功能时,我得到了正确的输出。

在此处输入图像描述

在此处输入图像描述

在此处输入图像描述

奇怪的是,我声明的变量显示未定义,但那些以自动生成的变量开头的变量_显示正确的值。

在此处输入图像描述

有人可以指出为什么它会这样吗?

(因为如您所见,我正在该容器上监听 KeyDown 事件,因此肯定存在 DOM 元素。)

提前致谢。

=======================

更新:一旦我按照 Christoph Herold 在评论部分中的建议更改变量名称,问题就解决了

标签: javascriptjquery

解决方案


我认为,在您的缩小过程中出现了问题,或者某些代码没有正确更新。尝试重命名您的变量或使用未缩小的代码来查看,如果这至少有效。基本代码看起来是正确的。


推荐阅读