2015-03-14 2 views
0

Здесь я столкнулся с проблемой, если условие проверено для объекта и не может установить фокус и не проверять для среднего поля. Здесь checkbox исходит от mysql. Но он дает источник, как это только. может ли кто-нибудь выяснить, в чем проблема в моем коде? Что я должен здесь делать. Надеюсь, что все поймут вопрос. Мне нужен правильный код для проверки этих двух полей. По крайней мере, в тематической колонке любой из них должен быть выбран также в региональном поле, и любой из них должен быть выбран. Я попробовал, что я могу сделать. Но я не смог закончить работу.Как сделать правильную валидацию для этого и установить фокус, а затем форма должна быть отправлена ​​

, что мне нужно это:

  1. Atleast любой один должен быть выбран в теме field.if его нулевой готовности + фокус
  2. как мудр для среднего поля тоже.
<script type="text/javascript"> 
    function check() { 
     var a1 = false; 
     b1 = false; 
     var chk = document.getElementsByName('subject[]'); 
     var reg = document.getElementsByName('regional[]'); 
     var len = chk.length; 
     var reg1 = reg.length; 
     if (len) { 
      for (i = 0; i < len; i++) { 
       if (chk[i].checked) { 
        return true; 
       } else { 
        alert('please select the subject'); 
        a1 = true; 
       } 
      } 
     } 
     if (!chk[i].checked) { 
      chk[i].focus(); 
     } 
     if (len) { 
      for (i = 0; i < len; i++) { 
       if (reg1[i].checked) { 
        return true; 
       } else { 
        alert('please select the medium'); 
        b1 = true; 
       } 
      } 
     } 
     if (a1 == true && b1 == true) { 
      return true; 
     } 
    } 
    </script> 

Myform is: 
<form name="f1" action="s.php" method="post"> 
Subject 
<input type='checkbox' name='subject[]' value='science'>science 
<input type='checkbox' name='subject[]' value='maths'>maths<br/> 

Medium 
<input type='checkbox' name='regional[]' value='Hindi'>Hindi 
<input type='checkbox' name='regional[]' value='english'>english<br/> 

<input type="submit" name="land" class="butt" value="SUBMIT" onClick="return check();"> 
</form> 
+0

еще должна быть вне цикла – mplungjan

+0

можете благодаря вы делаете это и выполняете e в jsfiddle beacose в течение двух дней я не могу этого сделать. снова может написать для меня – user3804431

ответ

0

Как это

Вместо OnClick использовать onsubmit и назначить функцию OnLoad

window.onload=function() { 
 
    document.getElementsByName("f1")[0].onsubmit=function() { 
 
     var chk = document.getElementsByName('subject[]'),chkOk=false; 
 
     for (var i = 0, n=chk.length; i < n; i++) { 
 
     if (chk[i].checked) { 
 
      chkOk = true; 
 
      break; 
 
     } 
 
     } 
 
     console.log(chkOk) 
 
     if (!chkOk) { 
 
     alert('please select the subject'); 
 
     chk[0].focus(); // focus the first 
 
     return false; 
 
     } 
 
     var reg = document.getElementsByName('regional[]'),regOk=false; 
 
     for (var i = 0, n=reg.length; i < n; i++) { 
 
     if (reg[i].checked) { 
 
      regOk = true; 
 
      break; 
 
     } 
 
     } 
 
     if (!regOk) { 
 
     alert('please select the medium'); 
 
     reg[0].focus(); // focus the first 
 
     return false; 
 
     } 
 
     return true; // allow submit 
 
    } 
 
}
<form name="f1" action="s.php" method="post" onsubmit="return check()"> 
 
Subject 
 
<input type='checkbox' name='subject[]' value='science'>science 
 
<input type='checkbox' name='subject[]' value='maths'>maths<br/> 
 

 
Medium 
 
<input type='checkbox' name='regional[]' value='Hindi'>Hindi 
 
<input type='checkbox' name='regional[]' value='english'>english<br/> 
 

 
<input type="submit" name="land" class="butt" value="SUBMIT"> 
 
</form>

+0

Спасибо, вот проблема. Если я снова подберу тему, она покажет «пожалуйста, выберите тему». – user3804431

+0

HI если не возражаете, можете добавить в jsfiddle, пожалуйста. не удалось внедрить – user3804431

+0

У вас есть концепция. Я не могу вставлять в window.onload или как насчет chkok = true не работает – user3804431

Смежные вопросы