2011-07-29 85 views
0

我學習JS,並添加元素等各地擺弄後,我試圖與對象做一個警報(),而是得到這個錯誤:[object htmltableelement] 所以我再嘗試:查看對象

alert(t.toString()); 

和得到了同樣的錯誤...我怎麼看到對象的內容?

回答

1

您可以使用螢火蟲:

console.log(t); 

,或者您可以使用innerHTML;

alert(t.innerHTML); 
+0

'innerHTML'是一個屬性只有HTML DOM節點。他的對象可能是一個DOM節點,但絕不保證;至少,這需要注意。 innerhtml –

+0

完美,謝謝! – Ryan

+0

廣東話接受這個答案另外6分鐘:( – Ryan

2

的方式,我通常做,這是通過使用Firebug Firefox插件。 在JavaScript中添加一個斷點,然後您可以查看任何對象及其所有鍵/值。

+0

上午在Chrome所以不知道是否會工作... – Ryan

+2

是Chrome瀏覽器也有「開發者工具」按'控制+ SHIFT + i'。這假設你只是想知道調試的價值。一旦你打開這些工具,點擊SCRIPTS標籤,然後在你想要檢查的代碼行上插入一個Break Point,然後在屏幕的右側,你可以看到'Watch variables'values – Daveo

+0

好吧, wayyyy太多細節還有...有點兒信息過載.. :( – Ryan

0

這不是一個錯誤。這是對象的默認字符串表示形式。

無論是由一個通過對象的屬性,並將其一個輸出迭代,或使用適當的調試工具,像Firebug這會給你的能力,真正檢查你的變量。

+0

我在Chrome上,所以不知道這是否會工作... – Ryan

+0

@Ryan:Chrome有[自己的調試工具](http://code.google.com/chrome/devtools/),但即使它沒有對於你使用Firefox + Firebug來達到這個特定目的會有多大的問題? IE也有一套等效的工具... – nnnnnn

+0

FF有點慢,而且我的筆記本電腦時不時,所以我現在有點困在Chrome瀏覽器 – Ryan

1

看到的一切:

for(var key in t) 
    alert('key:' + key + ', value: ' + t[key]); 

您可能需要更換警報,控制檯,以避免警報

+0

這也太好了,upvoted它,謝謝! – Ryan

0
function domObjectToString(domObject){ 
    if(typeof(domObject) ==='object'){  
     var divElement = document.createElement('div') ;  
     divElement.appendChild(domObject);  
     return divElement.innerHTML;  
    }else{  
     return domObject.toString();  
    } 
} 

----步驟如下數百-----
1.檢查所述domObject類型[對象]
2.如果對象不是
一個。創建一個「Div」元素
b。將DomObject附加到它
c。獲得「div」的innerHTML它給字符串
3.如果不是一個對象,則轉換爲字符串並返回它。