我的页面以禁用按钮开始,没有点击处理程序。稍后,当进行一些更改时,将启用该按钮。为了澄清,我在文件B中包含了文件A。
我目前的设置是:
档案A
function enableButton() {
$("#Accept").on("click", clickAccept);
}
function clickAccept() {
// do stuff
}
文件B (在另一个功能中)
enableButton();
这按预期工作。然而,当我移动一些东西时,我尝试了以下内容:
档案A
function clickAccept() {
// do stuff
}
文件B (在另一个功能中)
$("#Accept").on("click", clickAccept);
每当我点击按钮时,它都会在jquery.min.js中触发Uncaught TypeError: undefined is not a function
。当我从控制台调用函数clickAccept()
时,它将无误地执行。
这让我相信实际的约束并没有成功。我认为,这似乎有点奇怪,只要包含JavaScript文件,它们在技术上不同于不同的文件并不重要。这是预期的行为吗?
答案 0 :(得分:0)
应该是这样的:
function enableButton() {
$("#Accept").on("click", function(){
clickAccept();
});
}
应该包含在一个函数中,并作为函数调用