在asp.net中从Ajax POST检索数据
我有这样的ajax POST
$(document).ready(function () { var pcontent = document.body.innerHTML; var url = new URI(); $.ajax({ url: url, type: "POST", data: { "pcontent": pcontent }, success: function (data) { alert($(data).find(".right-panel").html()); }, complete: function () { }, error: function (jqXHR, error, errorThrown) { if (jqXHR.status) { alert(jqXHR.responseText); } else { alert("Something went wrong"); } } }); return false; });
我很困惑如何检索我在我的代码后面发布的数据(pcontent)。实际上在一个特定的类文件中我需要实现这个逻辑。
您必须创建一个控制器操作:
public class HomeController: { // model public class PDocument { public string pcontent {get;set;} } [HttpPost] public ActionResult SaveDocument(PDocument pcontent){ // do something return new JsonResult() { Data = new { Success = true } }; } }
JS:
$.ajax({ url: "Home/SaveDocument", type: "POST", data: { "pcontent": pcontent} ...});
注意:
-
如果设置,则无需在服务器上创建模型
$.ajax({ url: "Home/SaveDocument", type: "POST", data: pcontent }); // server side public ActionResult SaveDocument(string pcontent){ // do some thing }
-
出于安全原因,必须在调用ajax之前对html进行编码
如果你是mvc的新手,那么这是一个很好的开始: http : //www.asp.net/mvc/tutorials/mvc-4/getting-started-with-aspnet-mvc4/adding-a-controller