2010-08-27 25 views
7

Sto cercando di studiare la classe jquery, ma ho tempo per il debugging un oggetto perché non riesco a vedere l'elemento all'interno di essocome per avvisare JavaScript Object

$("#birds").autocomplete({ 
      source: "search.php", 
      select: function(event, ui) { 
      alert(ui); 

      } 
     }); 

restituisce [object Object] .. :(la mia domanda è come posso avvertire l'oggetto in modo che posso vedere l'elemento?

risposta

16

vi consiglio di utilizzare FireBug for debugging javascript. allora si può solo fare

console.log(ui) 

e si metterà a registrare l'oggetto in una forma che puoi espandere

+0

thx Scott .. ^^ grande – mapet

+3

@ Scott Come posso fare con Chrome? –

2

si può anche provare metodo Java Script:

// Alert javascript object in alert box 
    function alertObject(obj){  
     for(var key in obj) { 
     alert('key: ' + key + '\n' + 'value: ' + obj[key]); 
     if(typeof obj[key] === 'object') { 
      alertObject(obj[key]); 
     } 
     } 
    } 

Qui 'obj' è:

// your object var 
var getObject = {}; 

// object set with key an val 
getObject.swfVersionStr = '10.0'; 
getObject.xiSwfUrlStr = null; 
getObject.flashvarsObj = {}; 
getObject.parObj = {allowfullscreen: "true",wmode: "window",menu: "false"}; 

chiamata in questo modo:

alertObject(getObject); 

Così, semplice ..:)

+0

grazie singh, questo è il modo migliore per mostrare l'oggetto in allerta. ci sono molte situazioni in cui non vuoi usare console.log o non è disponibile. Grande! – khunshan

1

Se si utilizza Firefox, quindi puoi avvisare il valore dell'oggetto come sotto codice

alert(object.toSource()); // for you alert(ul.toSource()); 

Questo codice ha funzionato bene per me.

0

Basta convertire il tuo oggetto in un oggetto JSON usando stringfy. alert(JSON.stringify(yourObjectVariable));

semplice come torta :)

Problemi correlati