Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net mvc 将原始html从视图传递到控制器_Asp.net Mvc_Json_Jquery_Asp.net Mvc 4 - Fatal编程技术网

Asp.net mvc 将原始html从视图传递到控制器

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;

我想将原始html从视图传递到控制器。我正在尝试使用jqueryajax请求来实现它。在带有原始html的对象传递给控制器之前,一切都正常。我犯了什么错? 这是我的模型、控制器和jquery

多谢各位

模型

控制器

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); }
});