繁体   English   中英

当创建了多个函数时,如何提交一个 fom,在 onclick 和 onsubmit 等 evnet 上调用哪个函数?

[英]How can i submit a fom when their is multiple functions are created , which function to call on evnets like onclick and onsubmit?

<html>
    <body>
        <form onsubmit="return myFunction()">
        <input type="text" id="txt">
        <input type="text" id="txt1">
        <input type="button" value="click" id="btn">
        </form>
    </body>
    <script>
    var a = document.getElementById("txt");
    var b = document.getElementById("txt1");
    var save =  document.getElementById("btn");

    //save.addEventListener("click" , myFun);
    save.onclick = function(){myFunction()};
    //save.addEventListener("click" , myFunction);

        function myFunction(){

            if((a.value=="") || (b.value=="")){
                alert("fill something");
                return false;
            }else{
            alert("all ok");
            location.href="sec.html";
                return true;
            }

            //a.addEventListener("keyup" , myFun);
            //b.addEventListener("keyup" , myFun);
        }
        a.addEventListener("keyup" , myKeyFun);
        b.addEventListener("keyup" , myKeyFun);

        function myKeyFun()
        {
        if(a.value!==b.value){
                alert("mismatched");
                return false;
            }else{
                return true;
            }   
        } 

    </script>
</html>

我已经为不同的 - 不同的验证创建了许多函数,所以现在我想提交表单并在所有cinditons都为真时重定向到另一个页面。 但是即使条件不正确,这里的表单也会被提交,我写了这段代码只是为了理解。 实际代码相当大,所以我写了这个来理解当有 multilpe 函数时我将如何调用 main 函数来提交表单

不要通过制作不同的功能来搞砸。 请按照以下条件进行操作。

 var a = document.getElementById("txt"); var b = document.getElementById("txt1"); var save = document.getElementById("btn"); function myFunction() { if(a.value == ""){ alert("Please fill Text 1"); }else if(b.value == ""){ alert("Please fill Text 2"); }else if (a.value != b.value){ alert("Text 1 and Text 2 must be same"); } else{ alert("Successfully submitted"); //redirect to another page code; } } function textTwoFun(){ if(a.value != b.value){ alert('Value missmatched! Text 1 and Text 2 must be same'); } }
 <form> <input type="text" id="txt" placeholder="Text 1"> <input type="text" id="txt1" onkeyup="textTwoFun()" placeholder="Text 2"> <input type="button" onclick="myFunction()" value="click" id="btn"> </form>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM