0

我有以下功能,我试图显示从 ex.responseText 返回的响应文本。每次我尝试它都会以“未定义”的形式返回,但文本实际上是存在的

onError: function (ex) {


            $('<div>' + ex._message + '</div>').dialog({
                modal: true,
                resizable: false,
                title: "Items",
                buttons: { "Okay": function () { $(this).dialog("close"); } }
            });
        }

所以我尝试了以下

$('<div>' + ex.responseText + '</div>').dialog({
                    modal: true,
                    resizable: false,
                    title: "Items",
                    buttons: { "Okay": function () { $(this).dialog("close"); } }
                });

它向我显示了这样的错误{"message":"You have entered duplicate items. Please remove."}

我只是希望它显示实际消息You have entered duplicate items. Please remove.,而不是显示 {} 括号和“消息”文本。

我也试过

 var message = JSON.parse(ex.responseText)._message;
 $('<div>' + message + '</div>').dialog({
            modal: true,
            resizable: false,
            title: "Items",
            buttons: { "Okay": function () { $(this).dialog("close"); } }
        });

它仍然以未定义的形式返回。

我究竟做错了什么?

4

1 回答 1

0

尝试 ex.responseText.message,因为错误消息是您需要以键为目标的对象。

更清楚地说:

ex.responseText = {
    "message": "You have entered duplicate items. Please remove."
}

ex.responseText.message = "You have entered duplicate items. Please remove.";
于 2019-12-18T13:17:58.163 回答