2011-11-20 63 views
0

我是js的新手。試圖創建迷你驗證功能,它將檢查字段是否爲空。Javascript迷你驗證腳本

我想做的事是,調用FUNC這樣checkIfEmpty("fullname, email,..."),那裏面的功能,請用逗號分隔每個字段,收集空字段到一個數組,並在年底檢查該數組爲空。試過類似於下面的func,但不知道js中所有php函數的替代方法。請幫我實現我的想法..

function checkIfEmpty(fields) 
{ 
    var emptyFields=new Array(); 
    fields=fields.split(','); 
    foreach(fields as field) 
    { 
     if (!field.val()) { 
      field.attr('class', 'invalid'); 
      emptyFields[] = field; 
     } 
     } 
     if(emptyFields.length()==0){return true;} 
     else {return false;} 
} 
+0

你什麼意思,你donk't知道JS PHP函數的所有替代? –

+0

如果你使用的是jQuery庫,jquery-validate是相當不錯的。 –

+0

我是php開發人員,是js的新手。對於我不知道'foreach'循環替代js – heron

回答

1

好像你想是這樣的:

$("input:text").each(function(i, field) { 
    if (!field.val()) { 
     field.addClass('invalid'); 
    } 
}); 
return ($("input.invald").length > 0); // return true if invalid fields 
0

您還可以設置每路輸入一個類,不要以爲是空的,然後在表格提交檢查每個有這個類的輸入。

$('#form_id').submit(function() { 
    $('.required').each(function() { 
     // if a input field that's required is empty 
     // we add the class '.invalid' 
     if(!$(this).val()) { 
      $(this).addClass('invalid'); 
     } 
    }); 

    // prevent the submission if number 
    // there is required fields still empty 
    return ($('input.invalid').length == 0); 
}); 

這是一個必填字段的例子形式稱爲email

<form method="POST"> 
    <input type="text" name="email" class="required" /> 
    <input type="text" name="firstname" /> 
    <input type="text" name="lastname" /> 
    <input type="submit" value="SEND" /> 
</form>