2012-11-16 11 views
8

Mam skrypt jQuery, który sprawdza, czy co najmniej jedno pole wejściowe zawiera tekst, ale nie sprawdza mojej opcji zaznaczenia. Czy ktokolwiek może mi pomóc we wdrożeniu?Sprawdź, czy co najmniej jedno pole wejściowe jest wypełnione jQuery

Skrypt:

$(function(){ 
    $("#myform").submit(function(){ 

     var valid=0; 
     $(this).find('input[type=text]').each(function(){ 
      if($(this).val() != "") valid+=1; 
     }); 

     if(valid){ 
      alert(valid + " inputs have been filled"); 
      return true; 
     } 
     else { 
      alert("error: you must fill in at least one field"); 
      return false; 
     } 
    }); 
}); 

i HTML do testowania to:

<form action="/echo/html" id="myform" method="post"> 
<input type="text"><br> 
<input type="text"><br> 
<input type="text"><br> 

<select name="something" id="something" type="text"> 
<option value=""></option> 
<option value="one">Option one</option> 
<option value="two">Option two</option> 
<option value="three">Option three</option> 
</select> 

<input type="submit"/> 
</form>​ 

Odpowiedz

11

Na jednym rachunku chwycić obie 'Select' i elementy 'input', wystarczy zmienić jeden selektor jQuery selektor wielokrotny, taki jak:

$(this).find('input[type=text], select').each(function(){ 
      if($(this).val() != "") valid+=1; 
     }); 
Powiązane problemy