2013-08-16 51 views
3

對不起,如果這看起來愚蠢,我是JavaScript新手。JavaScript document.write無法正常工作

這是menu.js

document.write("<a href="index.html">Home</a>"); 
document.write("<a href="news.html">News</a>"); 
document.write("<a href="about.html">About us</a>"); 

這是index.html

<head> 
</head> 
<body> 
    <script type="text/javascript" src="menu.js"></script> 
</body> 
</html> 

當我打開index.html,沒有出現...

+5

[瞭解如何**調試** JavaScript](http://www.netmagazine.com/tutorials/javascript-debugging-beginners),您將知道問題所在。 –

+0

或者更好的是,使用一個編輯器來爲你突出顯示這些錯誤,以便在測試之前即可捕獲它們。 –

回答

8

的問題是你的報價,你'使用"來界定您的新元素並設置其屬性href,更改您的代碼於:

document.write("<a href='index.html'>Home</a>"); 
document.write("<a href='news.html'>News</a>"); 
document.write("<a href='about.html'>About us</a>"); 

或者:

document.write('<a href="index.html">Home</a>'); 
document.write('<a href="news.html">News</a>'); 
document.write('<a href="about.html">About us</a>'); 

結合單(')和雙(")的報價。您也無法逃脫你的內部引號(document.write("<a href=\"index.html\">Home</a>");

,但最好能夠使用單個調用document.write(),像這樣:

document.write('<a href="index.html">Home</a>' 
    + '<a href="news.html">News</a>' 
    + '<a href="about.html">About us</a>'); 
2

你不是在逃避你的字符串引號它應該是:

document.write("<a href=\"index.html\">Home</a>"); 

否則的JavaScript認爲href=後的字符串結束,行的其餘部分不遵循有效的JavaScript語法

。 10

正如@Felix提到的那樣,JavaScript調試工具對於讓你知道發生了什麼非常有幫助。