0

我正在处理 webapi 在这里我在 ajax 调用后得到空数据。我怎么能得到数据?

这是我的ajax调用:

<script type="text/javascript">
$(document).ready(function () {
var editor = CKEDITOR.editor.replace('editor1');
$('#btndiv').mouseleave(function (event) {
    $('#btndiv1').hide("slow");
        alert(1);
        var data1 = editor.getData();
        $('#btndiv').append(data1);
    // send your ajax request with value

        var dataToPost = JSON.stringify(data1);
        alert('hi');
        alert(data1 + "got data");
        $.ajax({
            type: "Post",
            url: "/api/UpdateCkeditor",
            contentType: "application/json; charset=utf-8",
            data: dataToPost,
            dataType: "json",
            statusCode: {
                200: function (data1) {
                    alert("Updated successfully");
                }
            }
            //success: function (value) {
            //    // do what you want on success.
            //    alert("Updated successfully");

            //}
        });
    });
});

</script>

这里是我的控制器:

  public void create(ckeditormodels data1)
    {
        webapiEntities db = new webapiEntities();

        var empObj = db.ckeditorDatas.First(c => c.id == 1);
        empObj.value = data1.value;

        db.SaveChanges();

    }

这是我的模型:

    public class ckeditormodels
{
    public int id { get; set; }
    public string value { get; set; }
    public string dataToPost { get; set; }
    public string data1 { get; set; }
}

在这里,我的数据为空。如何从我的控制器中获取数据形式的 ajax 调用?任何帮助表示赞赏 - 谢谢。

4

1 回答 1

1

CKEditor的getData()方法是从编辑器返回原始数据(与编辑器自己发布的相同)。您需要包装该字符串以更好地适应您的模型:

<script type="text/javascript">
    $(document).ready(function () {
    var editor = CKEDITOR.editor.replace('editor1');
    $('#btndiv').mouseleave(function (event) {
            ...
            var rawEditorValue = editor.getData();
            ...
            //If you want more properties here just extend this object
            var dataToPost = JSON.stringify({ value: rawEditorValue });
            ...
        });
    });
</script>

结果,rawEditorValue来自编辑器的数据将绑定到value模型的属性。我在这里还假设请求正在执行您的操作(URL 和方法似乎不合适,但 yoru 说该操作已执行且只有数据为空,所以我相信您)。

于 2012-10-30T11:45:30.497 回答