AJAX文件上传返回值

时间:2012-03-06 07:34:46

标签: php javascript jquery ajax plugins

我正在使用这个AJAX文件上传器

http://www.phpletter.com/Our-Projects/AjaxFileUpload/

我使用此代码:

function ajaxFileUpload() {
    $('input[type=file]').each(function () {
        if ($(this).val() == "") {
            return true;
        } else {
            $.ajaxFileUpload({
                url: 'upload.php',
                secureuri: false,
                fileElementId: this.id,
                success: function (data, status) {
                    $('body').html(data);
                },
            })
        }
    });
    return false;
}

我希望身体的html变成我从upload.php回显的东西,就像我们通常使用$ .ajax一样,当我从upload.php回显一些东西时,即使它只是一个简单的字符串,$('body ')的html变成了空白。什么都没有归还。有人可以帮忙吗?

3 个答案:

答案 0 :(得分:0)

使用$('body').html(data.msg);

答案 1 :(得分:0)

通过查看您链接到的网站,它会返回一个对象,而不是您要在body中插入的字符串。

success期待data成为一个对象,如果您从upload.php回显字符串,那么它将不是一个对象。尝试构建一个JSON对象并回显:

$out = new stdClass;
$out->error = '';
$out->msg = 'this is the message returned';

echo json_encode($out);
exit();

data.msg javascript部分中尝试success

答案 2 :(得分:0)

我遇到了同样的问题并遇到了这个问题。那么,这里的问题仍然没有答案。我找到了解决方案 - 在ajax调用中,我们还需要传递响应的dataType。它可能是“html”,“JSON”等。因此,如果您遇到类似的问题,请尝试传递dataType。在我的情况下,我得到了文件类型错误,因此给出了线索​​。