错误:Javascript上的[object Object]

时间:2012-04-14 18:46:33

标签: javascript error-handling

我在Firebug中运行下面的javascript时出现错误。我尝试过改变多个东西,但仍然输出错误。我正在使用api从XML检索信息,然后将其输出到屏幕上,但我不断收到对象错误。有人能看出原因吗?任何帮助表示赞赏!

$(document).ready(function() {

    $('#searchbtn').bind('click' || 'enter',function(e) {
        if ($.trim($('#searchBox').val()) !== '') {
            $('#videos').append('<img src="img/loading.gif" alt="loading" class="loading" />');
            getVideos(e);
        }
    });
});

function getVideos(e) {
    e.preventDefault();
    var text = 'text='+$('#searchBox').val();
    $.ajax({
        url: 'getVideos.php',
        dataType: 'xml',
        type: 'POST',
        data: text,
        success: function(data) {                               
            $('#videos').append("<h1>The following events match your search!</h1>");

            var xmlString = data;

            if ($(xmlString).find('feed').children('entry').length == 0) {
                $('#videos').append('<p class="noResults">Sorry, no results for you! Try searching again!</p>');
            } else {
                var videoTitle = [];

                $(xmlString).find('title').each(function() 
                { 
                videoTitle.push($(this).text()) });

                $('#videos').append('<ul>');

                $(xmlString).find('entry').each(function(i) {
                    if (i == '40') {
                        return(false);
                    }
                    var vidInfo = '';
                    vidInfo += "<p>"+videoTitle[i]+"</p>";
                    $('#videos ul').append('<li>'+vidInfo+'</li>');
                });
            }
        },
        error: function(data) {
                console.log('Error: ' + data);
        }

    })
};

1 个答案:

答案 0 :(得分:13)

当你将一个对象追加到一个字符串时,它会调用它的toString方法,对于一个普通的对象,它只会给出臭名昭着的“[object Object]”。要记录一个对象,你应该直接将它作为参数传递给console.log函数,如下所示:

console.log('Error:', data);