Modal Dialog No Redirect
我使用C#MVC版本5.我在模式对话框中有一个表单,它使用局部视图。 我想提交表单而不是重定向。 我只想关闭对话框。 可以这样做吗?
这是我的代码:
1 2 3 4 5 6 7 8 9 10 | <button type="button" class="close" data-dismiss="modal">×</button> <h5 class="modal-title">@title</h5> @using (Html.BeginForm("Edit","Region", FormMethod.Post, new { onsubmit ="return validateForm();", @class ="form-horizontal" })) { <button type="button" class="btn btn-link" data-dismiss="modal">Close</button> <button type="submit" class="btn btn-success">Submit form</button> } |
1 2 3 4 5 | public ActionResult Edit(int id) { RegionViewModels regionViewModels = MakeRegionViewModels(id); return PartialView("_InsertTaxRegion", regionViewModels); } |
您可以使用不带jQuery代码的Bootstrap模式执行此操作。
在我想要显示模态的页面上。 您的模态表单(PartialView)将显示在您已经在视图的顶部。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | <button id="btn" type="button" class="btn btn-info btn-lg" data-toggle="modal" data- target="#myModal">Open Modal</button> <!-- Modal --> <!-- Modal content--> <button type="button" class="close" data-dismiss="modal">×</button> <h4 class="modal-title">Modal Header</h4> @Html.Partial("Modal"); <button type="button" class="btn btn-default" data-dismiss="modal">Close</button> |
您的模态显示在PartialView中...
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 | @model NCR.Models.Employee @{ ViewBag.Title ="Edit"; } Edit @using (Html.BeginForm()) { @Html.AntiForgeryToken() @Html.LabelFor(model => model.FIRST_NAME, htmlAttributes: new { @class ="control-label col-md-2" }) @Html.EditorFor(model => model.FIRST_NAME, new { htmlAttributes = new { @class ="form-control" } }) @Html.ValidationMessageFor(model => model.FIRST_NAME,"", new { @class ="text-danger" }) @Html.LabelFor(model => model.LAST_NAME, htmlAttributes: new { @class ="control-label col-md-2" }) @Html.EditorFor(model => model.LAST_NAME, new { htmlAttributes = new { @class ="form-control" } }) @Html.ValidationMessageFor(model => model.LAST_NAME,"", new { @class ="text-danger" }) <input type="submit" value="Update" class="btn btn-default" /> |
}
使用jQuery,您只需序列化表单数据并在后台将其发送到服务器,您就可以关闭模式,这是一个示例:
如何使用jquery $ .post()方法提交表单值
如果您使用
使用JQuery - 阻止表单提交