2015-12-05 66 views
0

我正在使用jQuery驗證器來驗證表單,並且我想禁用當用戶單擊提交時空白的字段,以便服務器不會收到任何來自輸入的空白​​數據。要禁用它們,我用下面的JavaScript:通過javascript禁用後重新啓用輸入,因爲它是空的

$(function() { 
    $("#form1").submit(function() { 
     $(this).find(":input").filter(function(){ return !this.value; }).attr("disabled", "disabled"); 
    return true; // ensure form still submits 
    }); 
}); 

這裏是我的問題:此代碼的偉大工程假設形式在第一次提交的驗證。但是,如果用戶點擊提交但未經過驗證,則會顯示各種必需字段和彈出窗口的所有警報,但所有輸入均被禁用。我怎樣才能解決這個問題?我需要知道如何重新啓用他們,如果表格未經驗證並正確提交。

回答

0

禁用字段提交沒有意義。相反,如果存在空字段(並且這些字段不能爲空),您應該首先進行僅前端驗證,以防止提交。

您可以設置一個變量(或函數)來運行您的驗證,並且只有在它返回true時才提交。這只是一個輸入的簡明例子。

var validate = ($('input').val() == '') ? false : true; 

if(validate){ 
    // submit your form 
} else { 
    // throw your errors 
} 

然後在驗證開始時清除錯誤會很好。

相關問題