如何使用javascript返回来决定是否发布表单?

I've got a form where a user will generate a lower level of accounts to the system. I need the form to validate that the user hasn't used the same username twice. How do I set it so that the form will only post to the next page to post to the database if the javascript returns true?

<script type = "text/javascript">
    function validate() {
        if(document.myForm.namea == document.myForm.name2 || document.myForm.namea == document.myForm.name3 || document.myForm.namea == document.myForm.name4 || document.myForm.namea == document.myForm.name5 || document.myForm.namea == document.myForm.name6 || document.myForm.namea == document.myForm.name7 || document.myForm.namea == document.myForm.name8 || document.myForm.namea == document.myForm.name9 || document.myForm.namea == document.myForm.name10 || document.myForm.namea == document.myForm.name11 || document.myForm.namea == document.myForm.name12 || document.myForm.namea == document.myForm.name14 || document.myForm.namea == document.myForm.name15 || document.myForm.namea == document.myForm.name16 || document.myForm.namea == document.myForm.name17 || document.myForm.namea == document.myForm.name18 ){
            alert("You have entered the same username twice");
            document.myForm.namea.focus();
            return false;
        } else{
            return ( true );
        }

    }
    </script>

<form action='insertgenerate.php' method='POST' name="myForm" onsubmit="return(validate());" enctype='multipart/form-data'>

<button class="btn btn-sm btn-primary" type="submit" >Generate</button>

If the username has been entered twice the alert pops up but then it continues to the next page and posts to database regardless

<script type = "text/javascript">
    function validate() {
        if(document.myForm.namea == document.myForm.name2 || document.myForm.namea == document.myForm.name3 || document.myForm.namea == document.myForm.name4 || document.myForm.namea == document.myForm.name5 || document.myForm.namea == document.myForm.name6 || document.myForm.namea == document.myForm.name7 || document.myForm.namea == document.myForm.name8 || document.myForm.namea == document.myForm.name9 || document.myForm.namea == document.myForm.name10 || document.myForm.namea == document.myForm.name11 || document.myForm.namea == document.myForm.name12 || document.myForm.namea == document.myForm.name14 || document.myForm.namea == document.myForm.name15 || document.myForm.namea == document.myForm.name16 || document.myForm.namea == document.myForm.name17 || document.myForm.namea == document.myForm.name18 ){
            alert("You have entered the same username twice");
            document.myForm.namea.focus();
            return false;
        } else{
            return ( true );
        }

    }

    function validator(){
        if(validate() == true){
            document.getElementById("myForm").submit();
        }       

    </script>

<form action='insertgenerate.php' id="myForm" method='POST' name="myForm" enctype='multipart/form-data'>

<button class="btn btn-sm btn-primary" type="button" onclick="validator();" >Generate</button>