通过服务器端将HTML表传递给JSON导致错误

本文关键字:JSON 错误 服务器端 HTML | 更新日期: 2023-09-27 18:18:28

我在服务器端代码中动态创建了一个HTML表(使用c#)。当我通过使用杰森的客户端网站。我无法在客户端站点接收到该代码。这是我在服务器端的代码。

          $.ajax({
            type: "POST",
            url: "ExcelUpload.asmx/UploadFile",
            data: JSON.stringify({ XML: XMLDoc}),
            contentType: "application/json; charset=utf-8",
            dataType: "json",
            beforeSend: function () {
                $("#Status").html("<br><center><img src='ajax-loader.gif'/></center>");
            },
            success: function (result) {
                var output = "";
                var re = eval('(' + result.d + ')');
                if (re.length > 0) {
                    for (var i in re) {
                        var xl = re[i];
                        switch (parseInt(xl.status)) {
                            case 1: { output = xl.message; break; }
                            case 2: { output = xl.message; break; }
                        }
                    }
                    $("#Status").html(output);
                }
            },
            error: function (result) {
                $("#Status").addClass("error");
                $("#Status").html(result.d);
            }
        });

在服务器端代码中,我使用以下代码生成HTML表

    HTML += "<table id='excelDoc'>";
        HTML += "<tr><th>Date</th><th>Description</th><th>Reference</th><th>Nominal Code</th><th>Dept Code</th><th>Debit</th><th>Credit</th></tr>";
        HTML += "<tr><td>" + eDoc.posting_Date.ToShortDateString() + "</td><td>" + eDoc.Description + "</td><td>" + eDoc.Ref_Number + "</td><td></td><td></td><td class='db'></td><td class='cr'></td></tr>";

HTML += ";

status = "{status: 1, message: " + HTML + "}";返回" ["+ status+ "]";

请帮帮我。

通过服务器端将HTML表传递给JSON导致错误

你为什么做结果。d ?它不应该是简单的result吗?我更注意的一点是,在AJAX请求中,你的
dataType: "json"但是你返回的是一个简单的字符串。改变dataType:"text"然后尝试返回字符串。