之前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) @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) @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"); }
運行后,如下:

