2010-12-23 101 views

回答

3

使用.filter()方法來檢查它們各自的價值,然後檢查結果的長度屬性:

var incomplete = $("input[required]").filter(function() { 
    return this.value === ""; 
}); 
if (incomplete.length) { 
    alert("Please fill in all the required fields"); 
} 

請注意,名爲required的屬性會使您的HTML無效。然而,data-required可能是有效的HTML5,或者你可以給它們全部一個類並使用它作爲選擇器(這也會更有效)。

您也可以使用其中一個驗證插件:http://google.com/search?q=jquery+validation

+0

嗨安迪感謝這一點,你是對的HTML,但這是爲HTML5 :) – 2010-12-23 12:34:43

0

試試這個:

http://speckyboy.com/2009/12/17/10-useful-jquery-form-validation-techniques-and-tutorials-2/ 
0

bValidator插件(http://code.google.com/p/bvalidator/)只需在input標籤的末尾添加兩個屬性:
required="required" js-name="name_to_be_displayed"

<script language="javascript" src="jquery.min.js"></script> 
<script language="javascript" type="application/javascript"> 
$(function(){ 
    $("#submit").click(function(){ 
     $('input').each(function(index, value) { 
      var attb = $(this).attr('required'); 
      var value = $(this).val(); 

      if (attb == "required" && value == "") { 
       alert($(this).attr('js-name') + " " + 'value required'); 
       $(this).focus(); 
       return false; 
      } 
     }); 
    }); 
}); 
</script> 
<form action="index.php" method="post" enctype="multipart/form-data" target="_self"> 
<label> Name: 
<input name="Name:" type="text" size="60" maxlength="60" required="required" js-name="Name" /> 
</label> 
<br /> 
<label>Email: 
<input name="Email:" type="email" value="" size="60" required="required" js-name="Email" /> 
</label> 
<br /> 
<label>Phone: 
<input name="Phone" type="text" size="60" required="required" js-name="Phone" /> 
</label> 
<br /> 
<label>Country: 
<input name="Country" type="text" size="60" required="required" js-name="Country" /> 
</label> 
<br /> 
<input name="Submit" type="submit" id="submit" value="Submit" /> 
</form>