У меня есть вид и модель, модель содержит вопросы и опору для хранения результатов по конкретному вопросу.Я не могу получить его для проверки вопросов, он всегда проходит проверку модели при отправке (внутри контроллера).Я проверил, что jquery, jqueryvalidate и jqueryunobrtusive включены в этот порядок, я попытался переместить Сводку внутри и снаружи формы, но это не помогло.После отправки он появляется так, как будто все верно, и сообщения отображаются при отображении представления.
public class Result
{
[Required]
public int ResultID { get; set; }
[Required]
public string Text { get; set; }
}
public class Question
{
public int Id { get; set; }
public string Text { get; set; }
public Result Result{ get; set; }
}
<div>
@Html.ValidationSummary(true, "", new { @class = "text-danger" });
</div>
@using (Html.BeginForm("Submit", "post", FormMethod.Post, new { id = "Form" }))
{
HtmlHelper.ClientValidationEnabled = true;
HtmlHelper.UnobtrusiveJavaScriptEnabled = true;
for (int i = 0; i < Model.Count; i++)
{
var item = Model[i];
<div>
<div>
@item.Text
@Html.TextBoxFor(m => m[i].Result.Text, null, new { @class = "form-control" })
@Html.ValidationMessageFor(m => m[i].Result.Text)
@Html.HiddenFor(m => m[1].Result.ResultID )
</div>
</div>
}
}
<div>
<input type="submit" value="Submit"/>
</div>
}
public ActionResult Index()
{
List<Question> Questions = GetAllQuestions();
return View("View", Questions);
}
public ActionResult Submit(List<Question> sQuestions)
{
if (!ModelState.IsValid)
{
return View("Index", );
}