でビュー内の部分的なビューに戻ります。私のasp.net MVC 4プロジェクトでは、ユーザーが「詳細」をクリックしたときに、 。 データを保存するには問題ありませんが、部分的なビューを閉じることは問題ありません。部分的なビューを開くことは問題ではなく、モデルが有効でないときです(ユーザーが何かをマークするのを忘れたとき) 結果は、返されましたが、ビュー内ではありません。単なるスタンドアロンのページと見なされます。モデルが有効でない場合、エラーメッセージ
ビュー:
@model Evaluatietool.ViewModels.EvaluatorWijzigenOPViewModel
<h3>@ViewBag.Message</h3>
@using (Html.BeginForm("ChangeEvaluator", "Ontwikkelplan"))
{
@Html.ValidationSummary(true)
@Html.HiddenFor(model => model.oldEvalAccount)
@Html.HiddenFor(model => model.selectedMedewerkerAccount)
@Html.HiddenFor(model => model.eval);
@Html.HiddenFor(model => model.countMedewerkers);
...
...
<div class="Buttons">
<input type="submit" value="Submit" />
@Ajax.ActionLink("Sluiten", "Evaluatorenlijst", new AjaxOptions { OnSuccess = "HideResultDiv" })
</div>
}
コントローラー:
[HttpPost]
public ActionResult ChangeEvaluator(EvaluatorWijzigenOPViewModel ewopvm)
{
if (ModelState.IsValid)
{
if (ewopvm.selectedObjects != null)
{
ewopvm.selectedObjects.Add(ewopvm.selectedMedewerkerAccount);
}
else
{
ewopvm.selectedObjects = new List<string>();
ewopvm.selectedObjects.Add(ewopvm.selectedMedewerkerAccount);
}
Ontwikkelplannen op = new Ontwikkelplannen();
Evaluaties e = new Evaluaties();
foreach (string s in ewopvm.selectedObjects)
{
op.ChangeEvaluator(ewopvm.newEvalAccount, ewopvm.oldEvalAccount, s, ewopvm.eval);
}
return RedirectToAction("Evaluatorenlijst");
}
return PartialView("EvaluatorWijzigenPartial", ewopvm);
}
@Ajax.ActionLink(item.Evaluator1.Naam, "EvaluatorWijzigenPartial", new { id = item.ID, eval = true }, new AjaxOptions { UpdateTargetId = "EvaluatorWijzigen", OnComplete = "ShowResultDiv"})
01部分図を呼び出すリンク私はあなたがいずれかのリダイレクトを実行したり、検証が失敗した場合は部分ビューを返しChangeEvaluator
コントローラのアクションに標準Html.BeginForm
投稿を使用している見ることができるものから
をにリダイレクトするためのURL w。ドロップダウンコントロールの選択に影響します。 validator.unobtrusive.parse()をロードしても、この問題は解決できません。これのための任意のアイデア。 – vinodh
Microsoft.jQuery.Unobtrusive.Ajaxパッケージを持っていない場合、これはうまくいかないことに注意する価値があります($# 'someDivThatCOntainsYourForm')。あなたのプロジェクトにインストールされます。そのパッケージがインストールされたら - 完璧! – PTD