2014-02-28 81 views
0

我有一個表單,它有很多頁面,一旦完成所有頁面就完成驗證。我有一個需要驗證的文本框,以確保用戶在大多數頁面中沒有輸入太多的內容以保存在數據庫字段中。由於控制器設置爲僅在最後一次進行驗證,因此它將轉至處理請求函數並僅在最後一頁調用onbindvalidate函數。我希望每次用戶輸入太多內容時都會驗證這一點,我想知道是否有辦法在發生這種情況時跳過處理請求並轉到onbindvalidate函數。我無法刪除處理請求,因爲它處理文檔上傳。在處理請求中驗證或跳轉到驗證器

現在我的代碼捕獲異常,如果用戶輸入太多,它不能被保存到數據庫,並重定向回到頁面,這在處理請求中完成。有沒有一種方法可以通過處理請求將錯誤對象傳回,或者在發生此異常時跳過處理請求。處理請求返回一個ModelAndView。無論哪種方式,只要我重定向回錯誤。

+0

使用JavaScript驗證:) – RMachnik

回答

0

要處理它,你可以簡單地使用JavaScript驗證。

function validateForm() 
{ 
var x=document.forms["myForm"]["fname"].value; 
if (x==null || x=="") 
    { 
    alert("First name must be filled out"); 
    return false; 
    } 
} 

或簡單的ajax調用。驗證您的內容並保持在同一頁面上。

例如

$.ajax({ 
    url: "test.html", 
    context: document.body 
}).done(function() { 
    $(this).addClass("done"); 
}); 
+0

請問我剛上的按鈕使用validateForm()提交? – user3323143

+0

是的,你可以在提交時完成 – RMachnik