私はこのコントローラーを持っています:
public ActionResult Index()
{
return View();
}
[HttpGet]
public PartialViewResult Code()
{
return PartialView("Code");
}
[HttpPost]
public PartialViewResult Code(string code)
{
return PartialView("Code");
}
Index ビューに部分呼び出しがあります
@Html.Partial("Code")
ここに私の部分的なビューがあります
@model Kubeti.Models.Codes
@using (Ajax.BeginForm(new AjaxOptions { HttpMethod="POST", UpdateTargetId = "result", InsertionMode=InsertionMode.Replace }))
{
@Html.EditorFor(x => x.code)
@Html.ValidationMessageFor(x => x.code)
<input type="submit" value="OK" />
}
<div id="result" style="width: 500px; height:500px; border:1px solid red;">
</div>
もちろん、レイアウトにはjqueryとunobtrusive.jsがあります
@RenderBody()
<script src="https://code.jquery.com/jquery-2.1.3.min.js" type="text/javascript"></script>
<script src="~/Scripts/jquery.unobtrusive-ajax.min.js"></script>
しかし、送信をクリックすると、PartialViewResult コードではなく、インデックス アクション (デバッグ中) に入ります。どうしたの?
コンソールには次の警告があります。
メイン スレッドでの同期 XMLHttpRequest は、エンド ユーザーのエクスペリエンスに悪影響を与えるため、推奨されていません。詳細については、http://xhr.spec.whatwg.org/を確認してください。
私はそれをグーグルで検索しましたが、私の問題に合わせてカスタマイズする答えが見つかりません..