验证消息不会从级联控制MVC

时间:2015-05-11 10:23:51

标签: jquery asp.net-mvc-4 unobtrusive-validation

这是一个非常烦人的问题。我有一个绑定到模型的表单。有一些必填字段。他们中的大多数都依赖于一次下拉。如果我加载页面并直接单击“提交”按钮,则会显示所有验证消息。现在,如果我从A下拉列表中选择一个值,则“B”和“C”下拉列表的值会自动填充。但是bot的验证消息仍然可见。任何帮助表示赞赏。

以下是我的HTML:

<div>@Html.DropDownListFor(model => model.A, (IEnumerable<SelectListItem>)this.ViewBag.Breed, "Select Breed", new { @class = "width100" })</div>
<div class="eror_msg">@Html.ValidationMessageFor(model => model.A)</div>

<div>@Html.DropDownListFor(model => model.B, Enumerable.Empty<SelectListItem>(), "Select Skin Color", new { @class = "width100" })</div>
<div class="eror_msg">@Html.ValidationMessageFor(model => model.B)</div>

<div>@Html.DropDownListFor(model => model.C, Enumerable.Empty<SelectListItem>(), "Select Eye Color", new { @class = "width100" })</div>
<div class="eror_msg">@Html.ValidationMessageFor(model => model.C)</div>

jQuery代码:

$(document).ready(function(){
 $('#A').change(function(){
    $.ajax({
     success: function(data){
     // building html to bind to B and C
     $('#B').html(htmlforb).val(2).trigger('change');
     $('#C').html(htmlforc).val(5).trigger('change');       
  }
    });
  });
});

当我从A中选择值时,B和C的值会根据某些条件和业务逻辑自动填充和选择。两个change()事件都被触发了。但只有A的验证信息消失了。 B和C的验证消息仍然可见。

有关您的信息,此视图是部分视图。

0 个答案:

没有答案