Ajax成功方法没有解雇

时间:2018-04-10 10:50:34

标签: asp.net-mvc-4 asp.net-web-api asp.net-ajax

我使用的是ASP.NET Core 2 MVC,我有一个带有Post动作方法的Controller:

[HttpPost]
[Produces("application/json")]
public async Task<IActionResult> PostObject([FromForm] ObjectViewModel bjectViewModel)
{
    if (!ModelState.IsValid) return BadRequest(ModelState);
    //EF code
    return Ok(object);
}

我的观点包含以下代码:

//View code...
<form asp-action="PostObject" data-ajax="true" data-ajax-method="POST" data-ajax-success="OnSuccess" data-ajax-failure="OnFailure">
@Html.HiddenFor(x => x.VolumeID)
    <label asp-for="EAN" class="control-label"></label>
    <input asp-for="EAN" id="TextBoxEAN" class="form-control" value="" maxlength="13" autofocus />
    <span asp-validation-for="EAN" class="text-danger"></span>
</form>
//More view code...

//This contais ajax stuff
@section Scripts {@{await Html.RenderPartialAsync("_ValidationScriptsPartial");}

<script>
function OnSuccess(result) {
    console.log(result);
}
function OnFailure(result) {
    alert(result);
}
</script>

我可以正确执行POST操作,但它不是执行OnSuccess方法,而是显示返回的JSON对象。

我认为这与引用ajax-unobtrusive有关,但我认为这是自动处理的。

有人能指出我正确的方向吗?

0 个答案:

没有答案