using (Ajax.BeginForm("Customer", new AjaxOptions { HttpMethod = "POST" }))
{
{
.................
}
}
如何在新的 ajaxoptions 中禁用回发,写什么?
using (Ajax.BeginForm("Customer", new AjaxOptions { HttpMethod = "POST" }))
{
{
.................
}
}
如何在新的 ajaxoptions 中禁用回发,写什么?
您需要使用 Json 来防止页面中的完整回发。之后,您必须返回局部视图。
例如;
HTML 代码:
<input type="text" id="UserName" name="UserName"/>
<input type="button" onclick="ButonClick()" value="Enter"/>
Javascript代码:
function ButonClick() {
var data= {
UserName: $('#UserName').val(),
};
$.ajax({
url: "/Home/MyActionResult",
type: "POST",
dataType: "json",
contentType: 'application/json',
data: JSON.stringify(data),
控制器:
public ActionResult MyActionResult(string UserName)
{
var stringView = RenderRazorViewToString("_YourPartialView", model);
return Json(stringView, JsonRequestBehavior.AllowGet);
}
笔记:
您需要以下代码来呈现 json 的部分视图。
也将以下内容添加到您的控制器中。
public string RenderRazorViewToString(string viewName, object model)
{
ViewData.Model = model;
using (var sw = new StringWriter())
{
var viewResult = ViewEngines.Engines.FindPartialView(ControllerContext, viewName);
var viewContext = new ViewContext(ControllerContext, viewResult.View, ViewData, TempData, sw);
viewResult.View.Render(viewContext, sw);
viewResult.ViewEngine.ReleaseView(ControllerContext, viewResult.View);
return sw.GetStringBuilder().ToString();
}
}