2015-04-20 44 views
0

我應該在id =「para1」的段落中得到「Peter」的輸出,但不知何故,這種情況沒有發生。有人可以幫我嗎?在HTML段落中打印對象屬性

<html> 
<head> 
</head> 
<body> 
<p id=para1></p> 
<script>document.getElementById('para1').innerHtml = alpha.name;</script> 

<script> 
var alpha = {name:"Peter",age:23,gender:"male"}; 
</script> 
</body> 
</html> 

我已經改變了代碼這一點,仍然無法看到HTML屏幕單詞「彼得」:

<html> 
<head></head> 
<body> 
<p id=para1></p> 
<script> 
var alpha = {name:"Roshan",age:23,gender:"male"}; 
document.getElementById('para1').innerHtml = alpha.name; 
</script> 
</body> 
</html> 
+0

您在訪問'alpha'屬性之前甚至會聲明... – haim770

+0

console.log(alpha)並檢查控制檯中的可用屬性和相應值。 –

回答

1

您有兩個錯誤。

第一:<p id=para1></p> ID必須具有"<p id="para1"></p>

二:innerHTMLinnerHtml

這裏檢查您更新的代碼:

var alpha = {name:"Roshan",age:23,gender:"male"}; 
 
    
 
document.getElementById('para1').innerHTML = alpha.name;
<p id="para1"></p>

+0

是的,它現在跑了。 innerHTML的語法被錯誤地寫爲innerHtml。謝謝,建議!夥伴。 – Deadpool

+0

@Peterson WC很樂意幫忙。 innerHTML中的 – ketan

0

你試圖調用對象存在之前。要麼改變你的腳本週圍,或使用window.onload

<script type="text/javascript"> 
    window.onload = function(){ 
     var alpha = {name:"Roshan",age:23,gender:"male"}; 
     document.getElementById('para1').innerHTML = alpha.name; 
    }; 
</script> 

這可以確保腳本被執行之前的頁面完全加載。

這是迄今爲止最好的和最安全的解決方案,但如果你願意把它給「載你去」,然後更改順序會(也許)就足夠了:

<p id="para1"></p> 

<script type="text/javascript"> 
    var alpha = {name:"Peter",age:23,gender:"male"}; 
    document.getElementById('para1').innerHTML = alpha.name; 
</script> 

編輯:

另外,正如其他人所說 - 它是.innerHTML。 Javascript是區分大小寫的。

0

你的主要錯誤是innerHtml,而不是innerHTML。但是你所有的代碼格式不好。 讓我們更改您的代碼

<p id="para1"></p> 
<script type="text/javascript"> 
    var alpha = {name:"Roshan",age:23,gender:"male"}; 
    document.getElementById('para1').innerHTML = alpha.name; 
</script> 
0
<html> 
<body> 
<p id="para1"></p> 
<script> 
    var alpha = {name:"Peter",age:23,gender:"male"}; 
    document.getElementById('para1').innerHTML = alpha.name; 
</script> 
</body> 
</html> 
+0

HTML應該在大寫字母中。 –