我有一个IActionResult我控制器上返回通过AJAX的局部视图:如果我把一个<a>
标签在我的Razor视图具有以下调用使用AJAX与锚控制器动作VS按钮
[HttpGet]
[Route("/propertycoverages/loss")]
public IActionResult GetNewLoss()
{
return PartialView("_Loss");
}
:href="/propertycoverages/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>
标签生成如预期的那样,部分视图在页面内返回。但是,如果我尝试使用一个按钮:
<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调用成功方法的页面上? –