如何在Submit表单上的另一个函数内调用javascript函数?
我想在表单的onsubmit中调用如何在Submit表单上的另一个函数内调用javascript函数?,javascript,html,Javascript,Html,我想在表单的onsubmit中调用toggle2(): function toggle1() { //code toogle1 function toggle2() { //code toogle2 } } 我对此一无所知,提前谢谢。toggle2是在toggle1的范围内定义的,因此它不是全局的,不可访问 您可以将其分配给全局: <form name="myForm" action="blabla.php" onsubmit="return
toggle2()
:
function toggle1() {
//code toogle1
function toggle2() {
//code toogle2
}
}
我对此一无所知,提前谢谢。
toggle2
是在toggle1
的范围内定义的,因此它不是全局的,不可访问
您可以将其分配给全局:
<form name="myForm" action="blabla.php" onsubmit="return toogle2()" method="post">
…但在调用toggle1
之前,它不可用
不过,一般来说,全球化是个坏主意。在大多数情况下,不使用它们通常会更好。这使得onXXX
属性不可用,因此您必须切换到更现代的属性(直接或通过抽象库)
但在使用它之前,您仍然需要调用toggle1
function toggle1() {
//code toogle1
function toggle2() {
//code toogle2
}
document.querySelector('form').addEventListener('submit', toggle2);
}
如果我是你,我会用上面的方法你为什么想要这个?为什么不直接调用
toggle1()
?@Anickyan因为toogle1()中有一些东西让我想调用toogle2(),有没有办法调用toogle2?谢谢,您需要在toggle1中返回toggle2才能从toggle1范围外访问它,只需将toggle2()
置于toggle1()
之外即可使其全局化。案例已解决。@user2449684如果您想从内部toggle1调用toggle2,您可以将其移到外部,它仍然可以由toggle1调用。我认为这样做的唯一原因是对toggle1之外的任何代码隐藏toggle2。谢谢@Quentin的回答,它起了作用,但您仍然需要首先调用toggle1,这是一个非常糟糕的方法。我会将toogle2()移到外部
function toggle1() {
//code toogle1
function toggle2() {
//code toogle2
}
document.querySelector('form').addEventListener('submit', toggle2);
}
function toggle1() {
//code toogle1
toggle2();
}
function toggle2() {
//code toogle2
}