У меня есть MVC 5 приложение с ненавязчивой проверкой. В одном из представлений присутствуют две формы с / без вложенности, и ненавязчивая проверка работает с одной формой, а не с другой.
Ниже приведен дизайн представления, здесь я должен использовать концепцию вложенной формы, но HTML5 не будет поддерживать вложенную форму, поэтому я разработал, как показано ниже, обходной путь с использованием атрибута формы в элементе html, и частичное представление будет иметь отдельную форму.
В настоящее время ненавязчивая проверка работает для частичного просматривать форму, но не работает для D2Form.
<div class="row">
@using (Ajax.BeginForm("SaveD2Stage", "taskforces", new AjaxOptions()
{
HttpMethod = "POST",
OnBegin = "SCIForm.onAjaxBegin",
OnSuccess = "SCIForm.onAjaxSuccess",
OnComplete = "onCompleteAjax('D2Stage')"
}, new { @class = "edit-D2Stage-form", @id = "D2Form" }))
{
<h3 class="tab-title">
Problem Description and Risk Assessment
<button type="submit" class="btn btn-success" id="btnSaveD2Satge">
Save Changes
<i class="fa fa-check"></i>
</button>
</h3>
}
<hr />
<div class="form-body" id="d2stageform">
<input type="hidden" name="D2FormId" id="D2FormId" value="@Model.Id" form="D2Form" />
<ul class="nav nav-tabs tabs-top sideways">
<li class="active"><a href="#D2StageStepStatus" data-toggle="tab">Step Status</a></li>
<li><a href="#RiskAssessment" data-toggle="tab">Risk Assessment</a></li>
</ul>
</div>
<div class="tab-content">
<div class="tab-pane active panel panel-primary" id="D2StageStepStatus">
<div class="row">
<div class="col-xs-12 form-horizontal">
<h3 class="tab-title">Status and Informatoion </h3>
<div class="form-group">
@Html.SCILabelFor(model => model.StageCompletion, new { @class = "col-md-2 control-label" })
<div class="input-group col-md-4">
@Html.TextBoxFor(model => model.StageCompletion, new { @class = "form-control", @form = "D2Form", @style = "width:100px", @id = "D2StepStatus_StageCompletion" })
@Html.ValidationMessageFor(model => model.StageCompletion, "", new { @data_valmsg_for = "StageCompletion", @class = "text-danger" })
</div>
</div>
</div>
<br />
</div>
</div>
<div class="tab-pane panel panel-primary" id="RiskAssessment">
<div class="row">
<div class="col-xs-12">
@Html.Partial("AjaxGrid", Url.Action("RiskAssessmentGrid", "TaskForces", new { id = Model.Report.Id, oplid = Model.Report.TaskForce.OPLId }), new ViewDataDictionary() { { "HideSearch", true } })
</div>
</div>
</div>
</div>
</div>