2014-09-30 194 views
1

我更新使用MVC。我正在尝试使用数据注释中的构建来设置客户端验证。我已经阅读了一些教程,但似乎无法让它起作用。当我点击我的表单提交按钮时,它仍然显示错误信息而不是通知我没有提供说明。下面是我的类代码和我的视图代码:客户端验证MVC 5

类代码:

using System.ComponentModel.DataAnnotations; 
namespace TicketSystem.Models 
{ 
using System; 
using System.Collections.Generic; 

public partial class TICKET 
{ 
    public decimal id { get; set; } 
    public string empId { get; set; } 
    public short severityId { get; set; } 
    public short statusId { get; set; } 
    public short categoryId { get; set; } 

    [Required(ErrorMessage = "Description is required!!")] 
    public string description { get; set; } 
    public string logOfActions { get; set; } 
    public string deviceType { get; set; } 
    public string deviceSerNum { get; set; } 
    public System.DateTime dateCreated { get; set; } 
} 
} 

查看代码:

@Html.LabelFor(m => m.description, "Description:") 
@Html.EditorFor(m => m.description, new { rows = 5, @class = "txtBoxDescr" }) 
@Html.ValidationMessageFor(m => m.description) 
+0

你能展示更多的视图代码吗?你如何构建表单? – DavidG 2014-09-30 14:29:45

+0

[MVC 4客户端验证不工作]的可能重复(http://stackoverflow.com/questions/14520336/mvc-4-client-side-validation-not-working) – CodeCaster 2014-09-30 14:32:42

+0

两个最常见的问题检查:1。请确保您在web.config中启用了unobstrusive验证2.确保您的页面具有以下javascript引用和正确的顺序:jquery,jquery.validate,jquery.validate.unobstrusive – tweray 2014-09-30 14:37:11

回答

0

在你的控制器,一定要使用下面的代码:

if ModelState.IsValid() 
{ 
    //Do Something here 
    return RedirectToAction("Home"); 
} 

return View(myModel);

您可以查看更好的解释here