0

これは説明するのが少し難しいかもしれませんし、私はそれを適切に説明できないかもしれません (私は寝ていません)。現在、無効になっているチェックボックス(選択)とテキストボックス(参加)があり、無効になっていないチェックボックス(enable2)が1つあります。フォームHTMLの上に、「enable2」チェックボックスで機能する機能があります。チェックボックスをオンにすると、「選択」チェックボックスが有効になります。「選択」チェックボックスが有効になったら、そのボックスをチェックしてから、テキストボックス「出席」を有効にして、そのフィールドも必須にする方法を知りたいですか?ここに私の現在のコードがあります:

<script>
window.onload=function() {

document.getElementById('enable2').onchange=function(){

    var d = document.getElementById('box').childNodes;
    for( i=0, l=d.length; i<l; i++ )
    {
        d[i].disabled = !this.checked;
    }
};
}
</script>

<form name="eoiform" method="POST" action="<?php echo $_SERVER["PHP_SELF"];?>" id="eoi" onsubmit="return  ">

Enable Section D
<br>
<input type="checkbox" name="enable2" id="enable2">

<div id="box">
<b><p>Section D - Academically selective school</b></p>
<input type="checkbox" name="select" id="select" disabled />
<p>I have submitted an application for placement in an academically selective school. My child will be sitting for the Selective High Schools test. In case your child is not successful in gaining a place in this/these school(s), please also complete Section B,  Section C or Section E on this form.</p>
</div>

<div id="txts2">
<b><p>Section E - Placement not required</b></p>
<p>I will not be seeking to enrol my child in a NSW government school next year. My child will be attending the following school in 2015:*</p>
<input type="text" id="attend" name="attend" disabled />
<br>
<br>
Parent/Carer <input type="text" id="parentd" name="parentd" disabled />
<br>
Date <input type="text" id="datee" name="datee" disabled />
</div>

<input type="submit" name="submit" id="submit" value="submit" />

</form>

<script>
function validateCheckBoxes(theForm) {
if (!theForm.declare.checked) {
    alert ('You must tick the checkbox to confirm the declaration');
    return false;
} else {    
    return true;
}
}

var form = document.getElementById('eoi'),
validNumbers = [2474,
                2750,
                2753,
                2760,
                2777];

form.onsubmit = function() {

var userInput = document.getElementById("post"),
    numb = parseInt(userInput.value, 10);
if ( validNumbers.indexOf(numb) == -1 ) {
    alert("Please enter a correct postcode");
    return false;
}

return validateCheckBoxes(form);

}
</script>

その説明がもう一度はっきりしなかった場合は、申し訳ありませんが、何か明確にする必要があるかどうか尋ねてください.JavaScriptを学んでいるので、これに関する助けがあれば幸いです.

4

1 に答える 1

0

これを変更form.onsubmit = function() {して、変数やIDなどを置き換えてください。

var checkboxToMakeTextareamandatory = document.getElementByID(...);
var mandatoryTextarea= document.getElementByID(...);

if(checkboxToMakeTextareamandatory .checked && mandatoryTextarea.value == "") {
    alert(...);
}
于 2013-05-24T00:39:47.933 に答える