JS中未显示Ajax响应


Ajax response not showing in JS

我有一个类似的AJAX脚本

function savetoDB(inp) {
    var userID = (FB.getAuthResponse() || {}).userID;
    jQuery.ajax({
        url: URL,
        type: 'GET',
        data:{ 'input': JSON.stringify(inp) },
        contentType: 'application/json; charset=utf-8',
        dataType: 'json',
        async: true,
        success: function(msg) {
            console.log(msg);
            alert(msg);
        }
    });
}

我面临的问题是php返回(echo的)一些字符串,但我无法在alert中看到它。我使用了检查元素和内部检查元素,我可以看到响应,而且状态是200,它没有在警报中显示响应的原因是什么?

您正在返回一个JSON对象,因此它不会显示在警报中,警报只显示字符串。首先将其转换为字符串:

success: function(msg) {
    console.log(msg);
    alert(JSON.stringify(msg));
}

将"URL"替换为从中提取数据的文件的实际URL,否则将得到空响应。