2015-06-24 67 views
0

我想從特定的div中獲取所有表單元素,然後嘗試驗證它們,但我的代碼不適用於選擇框和單選按鈕, 這裏我的功能我想從特定的div中獲取所有元素,然後驗證它們

function validateForm(currentTab) { 
    var valid = true; 
    var div = currentTab; 
    $(div).find('input:text, input:password, input:file, select, textarea', 'input:radio, input:checkbox').each(function() { 

     // console.log($(this).attr('name')+ " " +$(this).attr('type')); 
     if ($(this).is(':visible')) { 
      if ($(this).val().length == 0) { 
       $(this).css("border", "1px solid red") 
       valid = false; 
      } else { 
       $(this).css("border", "") 
      } 
     } 
    }); 

    return valid; 
} 
+0

在開發人員控制檯中粘貼'$(div).find('input:text,input:password,input:file,select,textarea','input:radio,input:checkbox')'並檢查它是否選擇所有你想要的字段 –

+0

對於選擇框,你可能需要添加'option'標籤 – Fleuv

+0

它顯示所有選擇框undefined –

回答

0

我注意到你搜索參數是打入2串而不是隻是一個參數選擇:

$(div).find('input:text, input:password, input:file, select, textarea', 
    <-- here --> 'input:radio, input:checkbox') 

代替:

$(div).find('input:text, input:password, input:file, select, textarea, input:radio, input:checkbox') 
+0

仍然不起作用相同的問題 –

相關問題