簡體   English   中英

根據所選的單選按鈕啟用文本框

[英]enable textbox based on the radio button selected

這是我先前問題的擴展,可通過多個下拉列表和單選按鈕獲得

這是我的問題,我可以選擇所有單選按鈕並對其進行驗證,但這是棘手的部分,這里有此comments文本區域,並且從單選按鈕集中可以找到是否有任何一個匹配到neutralv3 ),然后注釋框中的文本應為hello ,如果任何單選按鈕與“ Strongly Disagree匹配,則注釋框中應輸入任何文本。 這是我更新的HTML。

<table>
    <tr>
        <td>I was trained adequetly for my current position *</td>
        <td><input name="cprb1" type="radio" value="V1" /></td>
        <td><input name="cprb1" type="radio" value="V2" /></td>
        <td><input name="cprb1" type="radio" value="V3" /></td>
        <td><input name="cprb1" type="radio" value="V4" /></td>
        <td><input name="cprb1" type="radio" value="V5" /></td>
    </tr>
    <tr>
        <td>I am skillfull enough to fulfill my responsibility *</td>
        <td><input name="cprb2" type="radio" value="V1" /></td>
        <td><input name="cprb2" type="radio" value="V2" /></td>
        <td><input name="cprb2" type="radio" value="V3" /></td>
        <td><input name="cprb2" type="radio" value="V4" /></td>
        <td><input name="cprb2" type="radio" value="V5" /></td>
    </tr>
    <tr>
        <td>I have enough time to fulfill all my responsibility *</td>
        <td><input name="cprb3" type="radio" value="V1" /></td>
        <td><input name="cprb3" type="radio" value="V2" /></td>
        <td><input name="cprb3" type="radio" value="V3" /></td>
        <td><input name="cprb3" type="radio" value="V4" /></td>
        <td><input name="cprb3" type="radio" value="V5" /></td>
    </tr>
    <tr>
        <td>I have required to work a proper number of hours *</td>
        <td><input name="cprb4" type="radio" value="V1" /></td>
        <td><input name="cprb4" type="radio" value="V2" /></td>
        <td><input name="cprb4" type="radio" value="V3" /></td>
        <td><input name="cprb4" type="radio" value="V4" /></td>
        <td><input name="cprb4" type="radio" value="V5" /></td>
    </tr>
    <tr>
        <td>I find my current position secure *</td>
        <td><input name="cprb5" type="radio" value="V1" /></td>
        <td><input name="cprb5" type="radio" value="V2" /></td>
        <td><input name="cprb5" type="radio" value="V3" /></td>
        <td><input name="cprb5" type="radio" value="V4" /></td>
        <td><input name="cprb5" type="radio" value="V5" /></td>
    </tr>
    <tr>
        <td>I think my work is appritiate enough *</td>
        <td><input name="cprb6" type="radio" value="V1" /></td>
        <td><input name="cprb6" type="radio" value="V2" /></td>
        <td><input name="cprb6" type="radio" value="V3" /></td>
        <td><input name="cprb6" type="radio" value="V4" /></td>
        <td><input name="cprb6" type="radio" value="V5" /></td>
    </tr>
</table>
Comments
<textarea name="comment" id="cprComment"></textarea>
<input type="submit" value="Submit" onclick="validate()">

這是我的javascript

function validate() {
if (getTheValueForDisagree('cprb1') || getTheValueForDisagree('cprb2') || getTheValueForDisagree('cprb3') || getTheValueForDisagree('cprb4') || getTheValueForDisagree('cprb5') || getTheValueForDisagree('cprb6')) {
                if (document.getElementById("cprComment").value === "") {
                    alert("Comments for How do you feel about your current position? is required");
                    return false;
                }

            }

            if (getTheValueForNeutral('cprb1') || getTheValueForNeutral('cprb2') || getTheValueForNeutral('cprb3') || getTheValueForNeutral('cprb4') || getTheValueForNeutral('cprb5') || getTheValueForNeutral('cprb6')) {
                if (document.getElementById("cprComment").value === "") {
                    document.getElementById("cprComment").value = "Hello";
                }
            }

}
function getTheValueForDisagree(name) {
            var cprb = document.getElementsByName(name);

            for (var i = 0; i < cprb.length; i++) {
                if (cprb[i].value === "V5") {
                    return true;
                }

            }
        }

        function getTheValueForNeutral(name) {
            var cprb = document.getElementsByName(name);
            for (var i = 0; i < cprb.length; i++) {
                if (cprb[i].value === "V3")
                    return true;
            }
        }

並且在這種情況下,如果選擇neutralstrongly disagree ,則應基於順序填寫評論。 如果首先選擇strongly disagree ,然后在下一個Neutral ,則在文本區域中應該有文本,否則,在文本區域中應該是Hello

希望這可以幫助..

    function validate() {
        var gr1 = document.querySelector('input[name = "cprb1"]:checked').value;
        var gr2 = document.querySelector('input[name = "cprb2"]:checked').value;
        var gr3 = document.querySelector('input[name = "cprb3"]:checked').value;
        var gr4 = document.querySelector('input[name = "cprb4"]:checked').value;
        var gr5 = document.querySelector('input[name = "cprb5"]:checked').value;
        var gr6 = document.querySelector('input[name = "cprb6"]:checked').value;

        console.log(gr1 + "  " + gr2 + " " + gr3 + "  " + gr4 + " " + gr5 + "  " + gr6);

        if (gr1 === "V5" || gr2 === "V5" || gr3 === "V5" || gr4 === "V5" || gr5 === "V5" || gr6 === "V5" ) {
            if (document.getElementById("cprComment").value === "") {
                alert("Comments for How do you feel about your current position? is required");
                return false;
            }

        }

        if (gr1 === "V3" || gr2 === "V3" || gr3 === "V3" || gr4 === "V3" || gr5 === "V3" || gr6 === "V3" ) {
            if (document.getElementById("cprComment").value === "") {
                document.getElementById("cprComment").value = "Hello";
            }
        }

    }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM