2012-04-14 46 views
4

以下のjavascriptをFirebugで実行するとエラーが発生します。私は複数のものを変更しようとしましたが、それでもエラーを出力します。 XMLから情報を取得して画面に出力するためにAPIを使用していますが、オブジェクトエラーが発生しています。誰かが理由を見ることができますか?どんな助けもありがとう!エラー:Javascriptの[object Object]

$(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); 
     } 

    }) 
}; 
+0

正確なエラーを入力してください。 – Kamal

+0

Chuckが答えた通りに、 'data'オブジェクトに' Error: 'という文字列を追加します。 – Jashwant

答えて

8

あなたがオブジェクトを文字列に追加すると、それはプレーンなオブジェクトのためだけの悪名高い「[オブジェクトのオブジェクト]」を与えますと呼ばれるそのtoString方法を、取得します。オブジェクトをログに記録するには、次のようにconsole.log関数を引数としてそのまま渡す必要があります。

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

文字列を上記のコードに置き換える必要がありますか? – LE12

+0

@ LE12: 'console.log( 'Error:' + data);'という行をそのコードで置き換える必要があります。 – Chuck