我有一個包含一些輸入字段的視圖。他們必須遵循一個觀看模型。他們也有驗證信息。但該視圖沒有表單標籤(既不是Ajax.BeginForm也不是Html.BeginForm)。ASP.NET MVC3無窗體標記的客戶端驗證
用戶輸入一些輸入,從表格中選擇(通過複選框)一些行,然後單擊一個按鈕。我在客戶端處理了此按鈕的單擊事件,並編寫了一個AJAX調用以將數據發送到服務器。這工作正常,除了客戶端驗證。由於我沒有表單標籤,客戶端驗證被忽略。有沒有什麼方法可以驗證用戶輸入並在必要時顯示錯誤消息,而不使用表單標籤?
你爲什麼不理表單標籤兩種方法? – Thulasiram
@deniz我得到同樣的問題,你找到任何其他方式來解決這個問題? – nirav
我無法避免使用表單標籤。但我在我的表單中放置了一個隱藏的輸入,並將其綁定到我的viewmodel中的一個字段(通過@ Html.HiddenFor輔助方法)。每次用戶從表格中選擇一行時,選定的標識符都會附加到該隱藏字段中。所以,當用戶點擊提交按鈕時,我的視圖模型被傳遞給控制器,包括隱藏的字段,其中包含選定的ID作爲逗號分隔的字符串(例如「3,5,8,9」)。然後我解析了服務器端的這個字符串並執行了必要的操作。由於我使用了表單標籤,因此驗證也被執行。希望能幫助到你。 –