If Radio Button is selected, perform validation on Checkboxes

前端 未结 4 1543
佛祖请我去吃肉
佛祖请我去吃肉 2021-01-03 12:05

I\'m trying to work this form so when the first radio button is selected, run a certain validation. When the second radio button is selected, run a different validation, etc

相关标签:
4条回答
  • 2021-01-03 12:35

    Full validation example with javascript:

    <!DOCTYPE html>
    <html>
        <head>
            <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
            <title>Radio button: full validation example with javascript</title>
            <script>
                function send() {
                    var genders = document.getElementsByName("gender");
                    if (genders[0].checked == true) {
                        alert("Your gender is male");
                    } else if (genders[1].checked == true) {
                        alert("Your gender is female");
                    } else {
                        // no checked
                        var msg = '<span style="color:red;">You must select your gender!</span><br /><br />';
                        document.getElementById('msg').innerHTML = msg;
                        return false;
                    }
                    return true;
                }
    
                function reset_msg() {
                    document.getElementById('msg').innerHTML = '';
                }
            </script>
        </head>
        <body>
            <form action="" method="POST">
                <label>Gender:</label>
                <br />
                <input type="radio" name="gender" value="m" onclick="reset_msg();" />Male
                <br />
                <input type="radio" name="gender" value="f" onclick="reset_msg();" />Female
                <br />
                <div id="msg"></div>
                <input type="submit" value="send>>" onclick="return send();" />
            </form>
        </body>
    </html>
    

    Regards,

    Fernando

    0 讨论(0)
  • 2021-01-03 12:46
    function validateDays() {
        if (document.getElementById("option1").checked == true) {
            alert("You have selected Option 1");
        }
        else if (document.getElementById("option2").checked == true) {
            alert("You have selected Option 2");
        }
        else if (document.getElementById("option3").checked == true) {
            alert("You have selected Option 3");
        }
        else {
            // DO NOTHING
            }
        }
    
    0 讨论(0)
  • 2021-01-03 12:46

    You need to use == or === for comparison. = assigns a new value.

    Besides that, using == is pointless when dealing with booleans only. Just use if(foo) instead of if(foo == true).

    0 讨论(0)
  • 2021-01-03 12:50

    You must use the equals operator not the assignment like

    if(document.form1.radio1[0].checked == true) {
        alert("You have selected Option 1");
    }
    
    0 讨论(0)
提交回复
热议问题