Ajax调用只返回部分数据

时间:2015-07-28 14:53:32

标签: javascript jquery asp.net ajax asp.net-mvc

我有textarea和按钮

<textarea id="xxx" class="myTextArea" name="Text1" cols="40" rows="15">@ViewData["translation"]</textarea>
<input type="button" id="convert-btn" class="btn btn-primary" value="Convert to android" />

和jquery ajax调用获取textarea的值并将其发送到c#ActionResult

$("#convert-btn").on("click", function () {
    var translation = $("#xxx").html();
    $.ajax(
    {
        type: "POST",
        async: true,
        url: "Translation/ConvertToAndroid",
        data: "translation=" + translation,
        error: function (jqXHR, textStatus, errorThrown) {
            debugger; /*see what happened */
        },
        success: function (data) {
            document.body.innerHTML = "";
            document.write(data);
        }
    });
});

传递给我的ActionResult的内容只有211行字符串,textarea中的文本有790行。

方法:

var translation = $("#xxx").val();

在chrome调试器中返回错误,只有.html()正在运行,但只从textarea返回部分数据。

1 个答案:

答案 0 :(得分:4)

尝试

data: {translation: translation},

而不是

data: "translation=" + translation,

让jQuery为你处理POST参数 - 我的猜测是,第211行的某些内容会混淆问题

它也可能是服务器中的上传大小限制