Зравствуйте.
Проблема такая. Есть форма, при заполнении которой необходимо проверять заполнение полей, но проблема заключается в том, что есть radio button, который открывает дополниетельные поля, которые, естественно, надо проверить на предмет заполнения, а когда эти поля скрыты, проверять их, естественно, не надо.
Код реализован так:
[left]<form name="f1" onsubmit="if(!check()){return false}" method="post" enctype="multipart/form-data">
<table align="center">
<tr>
<td class="style2">Name<font color="red">*</font>:</td>
<td><input size="29" name="name" /></td>
</tr>
<tr>
<td class="style2">Vorname<font color="red">*</font>:</td>
<td><input size="29" name="vorname" /></td>
</tr>
<tr>
<td class="style2">E-mail<font color="red">*</font>:</td>
<td><input size="29" name="email" /></td>
</tr>
<tr>
<td class="style2">Tel<font color="red">*</font>:</td>
<td><input size="29" name="tel" /></td>
</tr>
<tr>
<td class="style2">Fax:</td>
<td><input size="29" name="fax" /></td>
</tr>
<tr>
<td class="style2">Strasse / Haus Nr<font color="red">*</font>:</td>
<td><input size="20" name="adresse" /><input size="3" name="haus" /></td>
</tr>
<tr>
<td class="style2">Stadt / PLZ<font color="red">*</font>:</td>
<td><input size="20" name="stadt" /><input size="3" name="plz" /></td>
</tr>
<tr>
<td class="style2">Zahlungsmethode<font color="red">*</font>:</td>
<td>
<input id="formAbo2" onclick="toggleLayer('bank_form','');toggleLayer('blz_form','');toggleLayer('konto_form','');" type="radio" name="payment[type]" checked="checked" />Vorkasse
<input id="formAbo" onclick="toggleLayer('bank_form','inline');toggleLayer('blz_form','inline');toggleLayer('konto_form','inline');" type="radio" name="payment[type]" />Lastschriftverfahren
</td>
</tr>
<tr class="paymentBankCollection" id="bank_form">
<td class="style2">Bank<font color="red">*</font>:</td>
<td><input size="29" name="fax" /></td>
</tr>
<tr class="paymentBankCollection" id="blz_form">
<td class="style2">BLZ<font color="red">*</font>:</td>
<td><input size="29" name="fax" /></td>
</tr>
<tr class="paymentBankCollection" id="konto_form">
<td class="style2">BLZ<font color="red">*</font>:</td>
<td><input size="29" name="fax" /></td>
</tr>
<tr>
<td colspan="2" style="color: red; height: 35px;">
* - Pflichtfelder</td>
</tr>
<tr>
<td colspan="2"><br />
<input type="submit" name="button" value="Senden" onclick="if (confirm('Haben Sie AGB gelesen und akzeptiert?')==false){return false};" />
<input type="reset" value="Abbrechen" /></td>
</tr>
</table>
</form>[/left]
А так я проверяю заполнение полей, которые всегда отображаются
function check(){
if(document.f1.name.value.length<3){
alert("Bitte geben Sie Ihren Namen ein!");
document.f1.name.focus();
return false;
}
и т.д.
return true;
}