【问题标题】:Show validation message for Hidden field显示隐藏字段的验证消息
【发布时间】:2014-03-25 11:39:46
【问题描述】:

这可能是一个与其他问题更相似的问题,但我还没有从这些问题中找到我想要的解决方案。

我想显示我为 MVC 中的特定字段设置的验证消息::

我的 ViewModel 是::

 public class MainDocumentViewModel
    {


        [Required(ErrorMessage = "Please Enter Valid Customer Name")]
        public long CustomerID { get; set; }
    }

我的观点是::

<form>

    @Html.HiddenFor(x => x.CustomerID)
    @Html.ValidationMessageFor(x=>x.CustomerID)

 <button type="submit">Submit</button>
</form>

但提交表单后,我没有收到任何错误。 帮我解决这个问题。 提前致谢。

【问题讨论】:

  • 您想要客户端unobtrusive javascript validation?还是服务器端?
  • 我在 My Viewmodel 中定义的服务器端

标签: html asp.net-mvc asp.net-mvc-3 razor


【解决方案1】:

请转Here,很有帮助

隐藏字段的客户端验证不起作用,因为 jQuery 验证忽略所有隐藏标签。

您必须定义 HiddenRequiredValidator 类才能实现您的目标。

【讨论】:

    【解决方案2】:

    仅对特定隐藏字段进行验证,请执行此操作。

    <script>
        $.validator.setDefaults({
            ignore: $('#CustomerID') 
        });
    </script>
    

    特定形式的OR

    $('#myform').validate({
            ignore: []
        });
    

    【讨论】:

    • 这将忽略对 id CustomerID 的验证 :)
    【解决方案3】:

    如果您默认使用 jQuery 验证插件,它将忽略 hidden 字段。要验证隐藏字段,请更改默认设置

    $.validator.setDefaults({ 
        ignore: [],
        // other default options
    });
    

    【讨论】:

      猜你喜欢
      • 2013-05-30
      • 2013-07-12
      • 2013-08-18
      • 1970-01-01
      • 2013-01-13
      • 2021-08-29
      • 2011-02-13
      • 2013-03-08
      • 2012-10-30
      相关资源
      最近更新 更多