当我进入插入页面时,我有一个插入页面,显示了所有验证字段,
[Required(ErrorMessage ="Please Enter Name")]
public string ccname { get; set; }
这是我的类,我在其中声明了带有必需验证消息的字符串ccname
输入姓名
并且它应该在用户点击插入而不在ccname
但是在页面加载
上显示了验证消息@Html.TextBoxFor(model => model.ccname, new { @class = "textboxstyle" })
@Html.ValidationMessageFor(model => model.ccname)
我尝试了一些东西,但没有任何作用,
这是一个例子
在我的控制器中,我添加了ModelState.clear();
public ActionResult insert()
{
ModelState.Clear();
return View();
}
在我看来,我改变了
的代码@Html.TextBoxFor(model => model.ccname, new { @class = "textboxstyle" })
@Html.ValidationMessageFor(model => model.ccname)
到
@Html.TextBoxFor(model => model.ccname, new { @class = "textboxstyle" })
@Html.ValidationMessageFor(model => model.ccname,"",new {@style= ".validation-summary-valid { display:none; }" })
但这些都不起作用
我现在该怎么办?
答案 0 :(得分:1)
示例:强>
<强>型号:强>
public class MyModel
{
[Required(ErrorMessage ="Please Enter Name")]
public string ccname { get; set; }
}
<强>控制器:强>
public class HomeController:Controller
{
[HttpGet]
ActionResult Insert()
{
var model =new MyModel();
return View(model);
}
[HttpPost]
[ValidateAntiForgeryToken]
ActionResult Insert(MyModel model)
{
if(ModelState.IsValid)
{
//Do something
return View();
}
return View(model);
}
}
查看强>
<强> Insert.cshtml 强>
@model MyModel
@using (Html.BeginForm("Insert", "Home", FormMethod.Post))
{
@Html.AntiForgeryToken()
@Html.ValidationSummary(true, "", new { @class = "text-danger" })
@Html.TextBoxFor(model => model.ccname, new { @class = "textboxstyle" })
@Html.ValidationMessageFor(model => model.ccname)
<input type="submit" value="Insert" class="btn btn-primary" />
}
@Scripts.Render("~/bundles/jqueryval")