2011-11-10 149 views
0

我正在使用此表單驗證程序(http://www.position-absolute.com/articles/jquery-form-validator-because-form -validation-is-a-mess /),並且在正確驗證常規字段和2個使用AJAX驗證的字段時遇到問題。JQuery/Ajax表單驗證 - 除非表單驗證和ajax驗證,否則如何不提交表單

2 ajax字段用於確定用戶名和目錄是否已被使用,因爲我們不能在數據庫中有重複。

我想驗證表單,然後讓它執行一個ajax請求將信息提交給數據庫。 我可以使用$('#myform')。validationEngine('validate')返回true或false,如果表單(沒有AJAX驗證)有效。但是我不確定如何爲正常和ajax驗證同時返回true或false,因爲該方法僅適用於非ajax驗證。

任何想法?

回答

0

難道你不能在發送ajax請求之前檢查字段是否爲空,並且數據是否正確?

+0

我不太關注。對於正常的字段,我驗證它們不是空的。但是2個字段(目錄和用戶名)必須輸入信息,然後通過ajax檢查它們是否已被使用,然後返回爲有效或無效。該部分起作用。但是,對驗證器使用「validate」選項並不實際驗證ajax字段是否有效。所以它仍然會提交,即使這些不是有效的條目,但所有常規字段都是。這是問題。 – JimmyJammed

+0

他們不同

的?他們應該是吧?您將遇到自定義問題,因爲表單驗證包通常在一個表單上工作。我認爲在這一點上,你將深入挖掘驗證器本身的回調函數,並開始瞭解如何根據需要修改它。 – jakx

+0

另一個問題是你通過驗證是什麼意思?在這裏通讀邏輯,前兩個字段被髮送並返回「有效」或「無效」。然後使用「有效」名稱填充ajax字段,因爲它們是隻讀的權利?然後當你再次提交時,你仍然需要檢查你的值(因爲你的信息存儲在頁面中),但是在那個時候,如果用戶名和目錄被填充了,那麼這就算有效了,對吧?因爲你的意思是它應該是無效的,如果它在數據庫中?這裏有很多不清楚的想法,所以你應該發佈代碼。 – jakx