MVC3/4验证隐藏字段

Tay*_*Tay 2 jquery jquery-validate unobtrusive-validation asp.net-mvc-3

我已经为我的表单设置了模型验证,但验证似乎根本不起作用.我不认为任何人可以提供帮助.我已经尝试过使用下面的解决方法,但这会在firebug中不断提出"未定义"错误.

示例解决脚本:

<script type="text/javascript">
    $(document).ready(function () {            
        $.validator.setDefaults({ ignore: [] });
    });
</script>
Run Code Online (Sandbox Code Playgroud)

示例文本字段(注意:名称为customer的自动填充文本字段):

    @Html.TextBox("txtCustomer", null, new { @id = "txtCustomer", @class = "txt" })
Run Code Online (Sandbox Code Playgroud)

示例隐藏字段(注意:当从自动完成字段中进行选择时,将id注入隐藏字段):

    @Html.HiddenFor(model => model.Customer_ID, new { @id = "hCustomerID" })
Run Code Online (Sandbox Code Playgroud)

示例模型数据注释

    [Range(1, Int32.MaxValue, ErrorMessage = "Please select a customer")]
    public int Customer_ID { get; set; }
Run Code Online (Sandbox Code Playgroud)

编辑:错误的屏幕截图

对不起,我必须发布截图的链接,因为我的代表点足够高.

UI回发错误

编辑:显示页面源的屏幕截图

页面源的屏幕截图

Dr *_*ard 9

在不显眼的脚本之后以这种方式改变验证器的忽略为时已晚.这是因为验证器只会在创建默认值时拉入一次.不显眼的脚本为您创建验证器.您需要引用现有的验证器对象并进行更新.

试试这个

<script>
    $(document).ready(function () {            
        $('form').validate().settings.ignore = []
    });
</script>
Run Code Online (Sandbox Code Playgroud)