通过触发jQuery提交按钮提交表单不起作用

我有一个有forms的页面。 我有一个window.setTimeout,它将调用一个触发提交按钮的函数。 超时设置为10秒。 但是,如果时间已过,则调用该函数,但不提交表单。 似乎提交按钮没有提交表单。 请帮助如何使此function工作。 我希望如果调用函数“SubmitForm”,它将提交按钮而不单击提交按钮。 以下是我的代码。

HTML

@model MVCViewState.Models.Product    Create  window.setTimeout(SubmitForm, 10000); function SubmitForm() { alert('called'); $('#btnSubmit').submit(); }      @using (Html.BeginForm("Create", "Products", FormMethod.Post, new { id = "ProductForm" })) { @Html.ValidationSummary(true) 
Product
@Html.LabelFor(model => model.Name)
@Html.EditorFor(model => model.Name) @Html.ValidationMessageFor(model => model.Name)
@Html.LabelFor(model => model.Description)
@Html.EditorFor(model => model.Description) @Html.ValidationMessageFor(model => model.Description)

}
@Html.ActionLink("Back to List", "Index")

调节器

// // POST:/ Products / Create

  [HttpPost] public ActionResult Create(Product product) { try { List products; if (Session["products"] != null) products = Session["products"] as List; else products = new List(); if (products != null) products.Add(product); product.Id = products.Max(x => x.Id) + 1; Session["products"] = products; return RedirectToAction("Index"); } catch { return View(); } } 

尝试点击而不是提交。

 $('#btnSubmit').click(); 

#btnSubmit是您的提交按钮,而不是您的表单。 尝试提交按钮毫无意义。 你可能意味着:

 $('#ProductForm').submit();