0

私はsummernoteを使用していますが、データの一部をコントローラーに投稿したいです。データは次のようになります

<p>This is a sample test.&nbsp;</p>

以下は私が使用しているコードです

var sHTML = $('#summernote').code();
    $.ajax({
        url: "Home/GetText",
        data: sHTML,
        type: 'POST',
        cache: false,
        contentType: false,
        processData: false,
        success: function (vaildText) {
            // So something
        },
        error: function () {
            alert('error');
            // handle error
        }
    }); 

ホームコントローラー

[HttpPost]
    [ValidateInput(false)] 
    public ActionResult GetText(string sHTML)
    {
        // doing something

        return Json(vaildText);
    }

しかし、ホームコントローラーのSHTMLはNULLを与えています。どこが間違っていますか?これは、HTML データをコントローラーにポストする正しい方法ですか?

アルンがリクエストしたスタック

    Request URL:http://localhost:23680/Home/GetText
Request Method:POST
Status Code:200 OK
Request Headersview source
Accept:*/*
Accept-Encoding:gzip,deflate
Accept-Language:en-US,en;q=0.8
Connection:keep-alive
Content-Length:15
Content-Type:text/plain;charset=UTF-8
Cookie:__AntiXsrfToken=9d34feb94ea546abb4f50eb7251b4e25
Host:localhost:23680
Origin:http://localhost:23680
Referer:http://localhost:23680/
User-Agent:Mozilla/5.0 (Windows NT 6.2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/37.0.2062.103 Safari/537.36
X-Requested-With:XMLHttpRequest
**Request Payload**
[object Object]
4

2 に答える 2

1

sHTML というリクエスト パラメータを作成し、値を渡す必要があります。

var sHTML = $('#summernote').code();
$.ajax({
    url: "Home/GetText",
    data: {
        sHTML: sHTML
    },
    type: 'POST',
    cache: false,
    contentType: false,
    processData: false,
    success: function (vaildText) {
        // So something
    },
    error: function () {
        alert('error');
        // handle error
    }
});
于 2014-09-06T03:35:00.500 に答える
0

示されているように、ajax呼び出しを削除contentType: falseして追加datatypeしてみてください:-

var sHTML = $('#summernote').code();
$.ajax({
  url: "Home/GetText",
  data: {
    sHTML: sHTML
  },
  type: 'POST',
  datatype:'JSON'
  cache: false,
  processData: false,
  success: function (vaildText) {
    // So something
  },
  error: function () {
    alert('error');
    // handle error
  }
});
于 2014-09-06T04:45:51.977 に答える