VSアンカーにAJAXを使用してコントローラのアクションを呼び出すと、私はAJAXを介した部分ビューを返し、私のコントローラ上IActionResultを持っている:私は次のように私のかみそりビューで<a>
タグを入れた場合ボタン
[HttpGet]
[Route("/propertycoverages/loss")]
public IActionResult GetNewLoss()
{
return PartialView("_Loss");
}
:
<a asp-controller="PropertyCoverages" asp-action="GetNewLoss" id="loss-btn" data-ajax="true" data-ajax-update="losses" data-ajax-success="addLoss" data-ajax-method="GET">Add</a>
次のHTML属性が<a>
タグに生成されます:href="/propertycoverages/loss"
その作業sが期待どおりになり、部分ビューがページ内に返されます。私は、ボタンを使用しようとする場合は、:
<button asp-controller="PropertyCoverages" asp-action="GetNewLoss" id="loss-btn" type="submit" data-ajax="true" data-ajax-update="losses" data-ajax-success="addLoss" data-ajax-method="GET">Add</button>
次のHTML属性は<button>
タグに生成されます:formaction="/propertycoverages/loss"
と私は私が望むものではありませんどの/propertycoverages/loss
にリダイレクトされます。 <a>
タグのようにボタンを動作させる方法はありますか?
注:これらの要素は<form>
の内部にあります。私も<button>
をtype="submit"
からtype="button"
に切り替えることを試みましたが、コントローラのアクションは呼び出されません。
チェックこのhttps://stackoverflow.com/a/44269478/4018629 –
@AgamBanga私は=「ボタン」と入力してボタンを変えてみましたが、私は、ボタンをクリックすると、何も起こりません。コントローラーの動作が呼び出されません。 –
JSメソッドをボタンにもう一度付けないと、もう一度クリックしてください。 JSメソッドでは、アクションを呼び出すことができますHTMLを取得し、AJAX呼び出しの成功メソッドでページに横たわっている? –