Показать сообщение отдельно
  #1 (permalink)  
Старый 15.02.2013, 19:03
Интересующийся
Отправить личное сообщение для Garrys808 Посмотреть профиль Найти все сообщения от Garrys808
 
Регистрация: 15.02.2013
Сообщений: 16

Помогите настроить скрипт проверки Батонов и текстовых инпутов
Никак не получается настроить скрипт проверки заполнены ли все поля и выбраны ли параметры по радио баттонам работает либо то либо другое.
сам html такой
<FORM name="form1" action="otch_zak.php?title=<?php echo $title; ?>" method=post onSubmit="javascript: return checkForm(this)">
<table class="form_zakaz" >
	<tr class="ollcentr">
    	<td>
		<div class="topzak">
<table  cellspacing="10" class="toplistzak">
<tr>
		<td>
        <div class="td1"><?php echo $img_transf; ?></div>
        </td>
        <td valign="top" class="td2"><h2>
		<?php  echo $title_link; echo $title; ?></h2>

		<p>Маршрут: <?php echo $marschr; ?></p>
		</td>
        
        </tr>
        <tr>
        <td colspan="2" class="td3">
		<div id="d1">
   <table cellspacing="0" class="infoprice">
   		<tr>
        <td class="iprzak">цена чел. от</td>
        <td class="iprzak">авто Бизнесс класс 1-6 пасс.</td>
        <td class="iprzak">авто VIP класс 1-3 пасс.</td>
        <td class="iprzak">продолжит.</td>
        <td class="iprzak">период</td>
        </tr>
        <tr>
        <td class="iprzak"><?php echo $price_1; ?> &euro;</td>
        <td class="iprzak">selectauto<?php echo $price_bus; ?> &euro;<br><input name="selectauto" type="radio" value="1"></td>
        <td class="iprzak"><?php echo $price_vip; ?> &euro;<br><input name="selectauto" type="radio" value="2"></td>
        <td class="iprzak"><?php echo $times; ?></td>
        <td class="iprzak"><?php echo $periodoll; ?></td>
        </tr>
        </table>
		</div>
        </td>
</tr>

</table>
</div>
		</td>
    </tr>
    <tr>
    	<td>
        <table cellspacing="5" class="form_zakaz2">
    <tr>
	<td colspan="2"><b>Укажите дату *</b> (если не знаете точную дату, укажите период)</b> 
</td>
	</tr>
	<tr>
	<td align="right"><p>с*&nbsp;&nbsp;<INPUT name="data1" class="date" maxlength=10 ></p></td>
	<td align="left"><p>по&nbsp;&nbsp;<INPUT name="data2" class="date" maxlength=10 ></p></td>
	</tr>
	<tr>
    	<td class="left_form"><p><b>укажите количество пассажиров:*</b></p></td>
        <td class="right_form"><select name="people" >
                      <option value="" selected>0</option>
					  <option value="1">1</option>
                      <option value="2">2</option>
                      <option value="3">3</option>
					  <option value="4">4</option>
					  <option value="5">5</option>
					  <option value="6">6</option>
					  </select>
        </td>
    </tr>
	<tr>
	<td align="right"><b>предлагать свободные места желающим*<br>воспользоваться этой услугой?</b><br>(в этом случае стоимость будет снижена за счет дополнительных пассажиров)</td>
	<td align="left" valign="midle"><div id="d2"><INPUT name="free_place" type="radio" value="1">Да<input name="free_place" type="radio" value="2">Нет</div></td>
	</tr>
	<tr>
    	<td colspan="2"> <HR align=center width="650" color=gray noShade SIZE=1></td>
    </tr>
    <tr>
    	<td class="left_form">Ваше Имя:*</td>
        <td class="right_form"><INPUT name="name" maxlength=20></td>
    </tr>
     <tr>
    	<td class="left_form">Фамилия:*</td>
        <td class="right_form"> <INPUT name="fam" maxlength=30></td>
    </tr>
     <tr>
    	<td class="left_form">дата рождения (не обязательно):</td>
        <td class="right_form"><INPUT name="birth" maxlength=30></td>
    </tr>
     <tr>
    	<td colspan="2"><HR align=center width="650" color=gray noShade SIZE=1></td>
    </tr>
     <tr>
    	<td class="left_form">Страна:*</td>
        <td class="right_form"><input name="country" maxlength=50>
        </td>
    </tr>
    <tr>
    	<td class="left_form">Область, край (не обязательно):</td>
        <td class="right_form"><INPUT name="area" maxlength="100"></td>
    </tr>
     <tr>
    	<td class="left_form">Город:*</td>
        <td class="right_form"><INPUT name="city" maxlength="50"></td>
    </tr>
     <tr>
    	<td class="left_form">улица, номер дома и кв.:</td>
        <td class="right_form"><TEXTAREA name="addr" cols="20" rows="2" id="addr"></TEXTAREA></td>
    </tr>
     <tr>
    	<td class="left_form">e-Mail (для связи):*</td>
        <td class="right_form"><INPUT name="email" maxlength=30></td>
    </tr>
     <tr>
    	<td class="left_form">телефон (для связи):*</td>
        <td class="right_form"><INPUT name="phone" maxlength=15> </td>
    </tr>
      <tr>
    	<td align="left">Коментарий:</td>
        <td></td>
     </tr>
     <tr>
        <td class="ollcentr" colspan="2"><TEXTAREA class="inpkom" name="koment" cols="70" rows="10" id="koment"></TEXTAREA></td>
    </tr>
     
    </table>
    <CENTER>
             <h2><INPUT class="button_zak" type="submit" value="Отправить заявку"></h2>
			 <br>
    </CENTER>
       
    </td>
    </tr>
</table>
</form>


в таблице куча полей которые нужно заполнить и 2 группы по 2 радио кнопки в каждой группе обязательно человек должен выбрать одно из двух

сам скрипт проверки заполнения полей
function checkForm(f)
{
 if((f.fam.value=="")||(f.name.value=="")||(f.city.value=="")||(f.country.value=="")||(f.data1.value=="")||(f.addr.value=="")||(f.email.value=="")||(f.phone.value=="")||(f.people.value=="")||(f.selectauto== "0"))
 {
  alert("Вы указали не всю информацию!!! Все поля, кроме отмеченные *, обязательны для заполнения!");
  return false;
 }


скрипт проверки баттонов
function checkForm(f){
    if (chk('free_place') && chk('selectauto')){
        document.getElementById('d1').style.display='none';
        document.getElementById('d2').style.display='';
    }
}
function chk(name){
    var opt=document.getElementsByName(name);
    for (var i=0; i<opt.length; i++)
        if (opt[i].checked) return opt[i].value;
    return false;
}

если скрипт проверки полей еще как-то более менее стабильно работает, то скрипт проверки радио баттонов вообще отказывается, а в паре они вообще не работают

Последний раз редактировалось Garrys808, 15.02.2013 в 21:54.
Ответить с цитированием