Asp.net Mvc Ajax.BeginForm提交表单

时间:2023-03-09 13:24:11
Asp.net Mvc Ajax.BeginForm提交表单

之前Mvc中一直用Html.BeginForm提交表单,即如下:

@using (Html.BeginForm("Add", "News", FormMethod.Post, new { enctype = "multipart/form-data" }))
{
<table>
<tr>
<td><span style="color:red">*</span><span>标题</span></td>
<td>
@Html.TextBoxFor(model => model.NewsTitle)
&nbsp;@Html.ValidationMessageFor(model => model.NewsTitle, "", new { style = "color:red" })
</td>
</tr>
</table>
<div class='submit_forms'>
<input type="submit" name="submit" class='submit'>
</div>
}

今天试了下Ajax.BeginForm,主要为了后台弹出javascript代码窗口,需要引用js库:

jquery.unobtrusive-ajax.min.js

表单代码如下:

@using (Ajax.BeginForm("Add", "News",  new AjaxOptions { HttpMethod = "Post" }, new { enctype = "multipart/form-data" }))
{
<table>
<tr>
<td><span style="color:red">*</span><span>标题</span></td>
<td>
@Html.TextBoxFor(model => model.NewsTitle)
&nbsp;@Html.ValidationMessageFor(model => model.NewsTitle, "", new { style = "color:red" })
</td>
</tr>
</table>
<div class='submit_forms'>
<input type="submit" name="submit" class='submit'>
</div>
}

Controller中代码如下:

public ActionResult Add(NewsInfo entity)
{
return Content("alert('ok!');", "text/javascript");
}

运行后,如下:

Asp.net Mvc Ajax.BeginForm提交表单