【问题标题】:Jquery .ajaxForm() submit gives 404 error but URL is correct ASP.Net MVCJquery .ajaxForm() 提交给出 404 错误但 URL 正确 ASP.Net MVC
【发布时间】:2018-03-20 02:02:59
【问题描述】:

HTML 表单

<form id="form_CreateAccount" method="post" action="@Url.Action("CreateAccount","Account")" autocomplete="off">
    <div class="col-md-3 form-group">
         <label>Account Name*</label>
         <input type="text" name="AccountName" class="form-control" required/>
    </div>
    <div class="col-md-3 form-group">
         <label>Account Type</label>
         @Html.DropDownList("AccountTypeId",new SelectList(ViewBag.AccountTypes,"Id","Type"), new {@class="form-control"})
    </div>
    <div class="col-md-3 form-group">
         <button type="submit" class="btn btn-success adjust-btn">Create</button>
    </div></form>

JQuery .ajaxForm() 方法:

$("#form_CreateAccount").validate();

$("#form_CreateAccount").ajaxForm({
    beforeSubmit: function () {
        return $("#form_CreateAccount").valid();
    },
    dataType: "json",
    success: function (res) {
        if (res.success === true) {

        else {

        }
    }
})

这是我的控制器

public class AccountController : Controller
{
    IAccountService _accountSrvc;

    [HttpPost]
    public JsonResult CreateAccount(Account account)
    {
        var res = _accountSrvc.CreateAccount(account);
        return Json(new { success = res });
    }
}

如果没有 .ajaxForm() 方法,此表单会成功提交,但是当我使用 .ajaxForm() 提交表单时,会出现错误 404

【问题讨论】:

  • 可能不相关,但我认为beforSubmit 应该是beforeSubmit
  • 是的,它的“beforeSubmit”不是“beforSubmit”

标签: c# jquery asp.net asp.net-mvc forms


【解决方案1】:
beforeSubmit: function () {
    return $("#form_CreateAccount").valid();
}

.valid() 之后的分号导致问题。

【讨论】:

    猜你喜欢
    • 2013-01-29
    • 2016-10-10
    • 1970-01-01
    • 1970-01-01
    • 2016-08-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-05-19
    相关资源
    最近更新 更多