2014-03-19 198 views
0

我想做form.submit(),但只有當所有具有required屬性的表單項都已滿。僅當所有必填字段已滿時才提交表單?

我在想simpy迭代通過表單子查找屬性,但我不知道如何去做,因爲可能有嵌套元素等。可能還有一個更簡單的方法來做到這一點。

this.form_is_full = function(form){ 
    for (var i = 0; i < form.elements.length; i++){ 
     if(form.elements[i].getAttribute("required") && form.elements[i].value=="") 
     { 
     // If has attribute required and is blank return false 
     } 
    } 
    return true; 
} 

我該怎麼做?

回答

0

這是我做過什麼:

this.validate_form = function(form){ 
    for (var i = 0; i < form.elements.length; i++){ 
     if(form.elements[i].value == "" && form.elements[i].getAttribute("name") && form.elements[i].hasAttribute("required")) 
     { 
      return false; 
     } 
    } 
    return true; 
} 
0

試試這個:

$('#YourFormId').submit(function(e) { 
    if ($.trim($("#YourFormId input").val()) === "") { 
     e.preventDefault(); 
     alert('you did not fill out one of the fields'); 
    } 
}); 
+1

我使用純JS抱歉,沒有做明確 – lisovaccaro

0
function Validate() 
     { 


     // create array containing textbox elements 
     //for example: 
     var inputs = [document.getElementById('fname'), 
     document.getElementById('lname'), document.getElementById('email'), 
     document.getElementById('messagetxt')]; 

     var error; 

     for(var i = 0; i<inputs.length; i++) 
     // loop through each element to see if value is empty 
     { 
      if(inputs[i].value == '') 
      { 
       error = 'Please complete all fields.'; 
       alert(error); 
       return false; 
       } 
     } 
    } 
相關問題