Asp.net mvc 将原始html从视图传递到控制器
我想将原始html从视图传递到控制器。我正在尝试使用jqueryajax请求来实现它。在带有原始html的对象传递给控制器之前,一切都正常。我犯了什么错? 这是我的模型、控制器和jquery 多谢各位 模型 控制器Asp.net mvc 将原始html从视图传递到控制器,asp.net-mvc,json,jquery,asp.net-mvc-4,Asp.net Mvc,Json,Jquery,Asp.net Mvc 4,我想将原始html从视图传递到控制器。我正在尝试使用jqueryajax请求来实现它。在带有原始html的对象传递给控制器之前,一切都正常。我犯了什么错? 这是我的模型、控制器和jquery 多谢各位 模型 控制器 public ActionResult AddText(NewsEditionModel obj) { var news = new News(); try { news.Text = obj.Text;
public ActionResult AddText(NewsEditionModel obj)
{
var news = new News();
try
{
news.Text = obj.Text;
news.PublishDate = DateTime.Now;
news.Title = obj.Title;
var repository = new Repository();
var success = repository.AddNews(news, User.Identity.Name);
return Json(new {data = success});
}
catch (Exception)
{
return View("Error");
}
}
Jquery
function submitForm() {
var text = ste.getContent();
var title = $('#title').val();
var obj1 = JSON.stringify({ Text: text, Title: title, SubTitle: "" });
var obj = $.parseJSON(obj1);
$.ajax({
type: "POST",
dataType: "json",
content: "application/json",
data: {obj: obj},
url: '@Url.Action("AddText", "News")',
success: function (res) {
}
});
}
我想不是这样的:
data: {obj: obj},
你应该这样做:
data: {obj: JSON.stringify({ Text: text, Title: title, SubTitle: "" })},
你可以用这个例子
$.ajax({
url: '@Url.Action("AddText", "News")',
data: {obj: JSON.stringify({ Text: text, Title: title, SubTitle: "" })},
contentType: 'application/json',
dataType: 'json',
success: function (data) { alert(data); }
});
只需将
添加到您的控制器post请求中。即使使用调试器也很难说。但我可以说控制器中的obj没有初始化。但若我使用我自己的例子,模型是初始化的,但属性(文本等)被设置为true。我想这是因为数据中的html标记。加载资源失败:服务器响应状态为500(内部服务器错误)是的,您有服务器错误。请检查chrome中的头请求并响应您的错误。这是我的obj:{“Text”:“dasdad”,“Title”:“,”SubTitle:“}。
$.ajax({
url: '@Url.Action("AddText", "News")',
data: {obj: JSON.stringify({ Text: text, Title: title, SubTitle: "" })},
contentType: 'application/json',
dataType: 'json',
success: function (data) { alert(data); }
});