如何为asp.net mvc 4中的select2字段提供强制字段验证

时间:2014-02-25 07:32:48

标签: c# asp.net-mvc jquery-select2

我在我的MVC 4.0项目中使用select2插件作为选择列表。

但是当我们使用select2时,MVC的默认验证失败了。有时候选择列表会出现错误消息,但是当我们从选择列表中选择值时,它不会自动清除。

请给我关于任何其他客户端验证的建议

以下是我的项目代码。

.cshtml

     <div class="editor-field">
        <select id="cityid">
            <option></option>
        </select>
        @Html.ValidationMessageFor(model => model.CityID)
        <script type="text/javascript">
            $("#cityid").select2({
                placeholder: "Select City",
                width: "200px"
            });
        </script>
    </div>

型号代码:

    [Required(ErrorMessage="Please select city")]
    public  int CityID { get; set; }

请帮我解决这个问题

1 个答案:

答案 0 :(得分:3)

请检查此enter link description here

    (function() {
  var $select = $('select').select2({
    placeholder: 'Choose',
    allowClear: true
  });

  /*
   * When you change the value the select via select2, it triggers
   * a 'change' event, but the jquery validation plugin
   * only re-validates on 'blur'
   */
  $select.on('change', function() {
    $(this).trigger('blur');
  });

  $('#myForm').validate({
    ignore: 'input[type=hidden], .select2-input, .select2-focusser'
  });

  $select.rules('add', 'required');
}());