首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >@Html.EditorFor required = "required“不工作

@Html.EditorFor required = "required“不工作
EN

Stack Overflow用户
提问于 2017-05-08 02:16:51
回答 3查看 9.5K关注 0票数 1

我想验证需要输入但不能在asp.net mvc中工作的@Html.EditorFor。

代码语言:javascript
复制
<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>

对于我简单的问题,我很抱歉,因为尝试解决这个问题真的很失败

我的控制器代码

代码语言:javascript
复制
    [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");
    }

谢谢

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2017-05-09 03:13:21

当你想验证强制表单输入时,如果你的MVC低于5.1,不要使用EditorFor(),只要使用TextBoxFor()就行了谢谢

票数 0
EN

Stack Overflow用户

发布于 2017-07-06 08:24:51

像这样插入@@required="required"

票数 1
EN

Stack Overflow用户

发布于 2021-02-02 05:23:56

这就是我的工作方式(ASP.NET MVC5)。添加

代码语言:javascript
复制
@data_val="true"

使用

代码语言:javascript
复制
@required="required"

最终代码:

代码语言:javascript
复制
@Html.EditorFor(model => model.FullName, new { htmlAttributes = new { @class = "form-control", @data_val="true", @required="required" } })

通过添加,表单开始使用jquery验证器。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43835027

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档