我想验证需要输入但不能在asp.net mvc中工作的@Html.EditorFor。
<div class="form-group"> <label>First Name editor*</label>
@Html.EditorFor(x => x.Requester.FirstName, new { @class = "form-control", required = "required" })
@Html.ValidationMessageFor(m => m.Requester.FirstName)
</div>对于我简单的问题,我很抱歉,因为尝试解决这个问题真的很失败
我的控制器代码
[HttpPost]
public ActionResult Index(ViewModel.Ticket m)
{
try
{
using (DatabaseManager ctx = new DatabaseManager(true))
{
if (string.IsNullOrEmpty(m.TicketNo))
{
m.TicketNo = TicketNo.Create(User.Identity.Name, "TICKET");
}
Ticket obj = ViewModel.Ticket.ConvertToTicketBusiness(m);
obj.Requester = m.Requester.Email;
obj.TicketStatus = TicketStatus.Open.ToString();
obj.Escalation = User.Identity.Name;
obj.CreatedBy = User.Identity.Name;
obj.CreatedDate = DateTime.Now;
obj.UpdatedBy = obj.CreatedBy;
obj.UpdatedDate = obj.CreatedDate;
if (obj.IsValid)
{
obj = obj.Save();
}
Customer cust = ViewModel.Ticket.ConvertToCustomerBusiness(m.Requester);
if (string.IsNullOrEmpty(cust.CreatedBy))
{
cust.CreatedBy = User.Identity.Name;
cust.CreatedDate = DateTime.Now;
}
cust.UpdatedBy = User.Identity.Name;
cust.UpdatedDate = DateTime.Now;
if (cust.IsValid)
{
cust = cust.Save();
}
ctx.SaveChanges();
}
ViewBag.SuccessMsg = "Success";
}
catch (Exception ex)
{
ViewBag.ErrorMsg = ex.Message;
return View(m);
}
return RedirectToAction("Inbox");
}谢谢
发布于 2017-05-09 03:13:21
当你想验证强制表单输入时,如果你的MVC低于5.1,不要使用EditorFor(),只要使用TextBoxFor()就行了谢谢
发布于 2017-07-06 08:24:51
像这样插入@:@required="required"
发布于 2021-02-02 05:23:56
这就是我的工作方式(ASP.NET MVC5)。添加
@data_val="true"使用
@required="required"最终代码:
@Html.EditorFor(model => model.FullName, new { htmlAttributes = new { @class = "form-control", @data_val="true", @required="required" } })通过添加,表单开始使用jquery验证器。
https://stackoverflow.com/questions/43835027
复制相似问题