簡體   English   中英

ASP.NET MVC客戶端驗證

[英]Asp.net MVC client validation

我正在構建asp.net mvc5應用程序,但沒有足夠的知識來解決它。 我有一個需要驗證的表單,然后使用ajax發布。 我使用Ajax.BeginForm()

@using (Ajax.BeginForm("ActionMethod", "Controller", new { id =
 "form"}, new AjaxOptions { HttpMethod = "POST", OnBegin =
 "FormValidation", OnSuccess = "WriteMessage" }))

在FormValidation函數內部,我有自己的驗證代碼,除其他外,我在其中進行了ajax調用以從數據庫中獲取數據。 如果函數返回false,則不提交表單,但如果返回true,則提交。 我成功獲取了json格式的數據。 我獲取的數據在ajax的成功回調內部,因此無法在其外部使用,因此在成功回調內部我具有驗證代碼。 但是,當我的成功回調中的驗證代碼失敗時,我希望不提交該表單,但向用戶顯示該錯誤。 如何阻止表單提交,或者還有另一種方法。

我的控制器動作:

[HttpPost]
        [ValidateAntiForgeryToken]
        public ActionResult Create([Bind(Include="ID,Date,Name,Surname,Adress,ProjectName")] Data data)
        {
            if (ModelState.IsValid)
            {
                db.Data.Add(data);
                db.SaveChanges();
                return RedirectToAction("Index");
            }

            return View(data);

        }

為什么不使用數據注釋?

http://www.asp.net/mvc/tutorials/mvc-music-store/mvc-music-store-part-6

請嘗試此操作,因為使用Dataannotations可以同時處理客戶端和服務器端驗證

所以請嘗試....

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM