2013-10-27 96 views
2

嘿傢伙我有一些代碼在這裏,應該在頁面上創建HTML元素,今天顯示日期ID ='今天'旁邊如何使用textnode寫出ID ?謝謝你的幫助!這是我的完整代碼:JavaScript使用DOM的方法和屬性

HTML:

<body> 
    <h1>ToDo List - Date: <span id='today'>&nbsp;</span></h1> 

    <div id="todolist"> 
<p> 
    <input type="button" id="additem" value="Add Item"> 
</p> 
    </div> 

    <hr> 

    <div> 
<p> 
    <input type="button" id="sortitems" value="Sort and Display Items"> 
</p> 

<p id="displayitems"> 
</p> 
    </div> 
    </body> 

的Javascript:

var $ = function (id){ 
return document.getElementById(id); 
    } 

    var TodaysDate = function() { 
    var myDate = new Date(); 

    var myMonth = myDate.getMonth() + 1; 
    var myDay = myDate.getDate(); 
    var myYear = myDate.getFullYear(); 

    var myResponse = myMonth + "/" + myDay + "/" + myYear; 

    var myPara = document.createElement("p"); 
    var myP = document.getElementById('today'); 
    myP.appendChild(myPara); 

    var myText = document.createTextNode(myResponse); 
    myPara.appendChild(myText); 

    } 
    window.onload = function() 
    { 
    $("today").onload = TodaysDate; 
    $("sortitems").onclick = sortItem; 
    $("additems").onclick = addItem;  
    } 
+0

量程上限? Onload只適用於windows /框架和圖像 – mplungjan

+0

有趣的使用'$'函數作爲'document.getElementById'的簡寫。我以前從未見過 - 試圖讓它看起來像JQuery我猜? ** + 1 **有趣。 –

回答

2

跨度的onload?在跨度上不會觸發Onload。其他的對象確實有例如加載事件:窗口/幀,身體,鏈接,文字和圖像

變化

$("today").onload = TodaysDate; 

TodaysDate(); 

var myPara = document.createElement("p"); 
var myP = document.getElementById('today'); 
myP.appendChild(myPara); 
var myText = document.createTextNode(myResponse); 
myPara.appendChild(myText); 

var myPara = document.createElement("p"); 
var myText = document.createTextNode(myResponse); 
myPara.appendChild(myText); 

var myP = $('today'); 
myP.appendChild(myPara); 
1

嘗試更換這行:

$("today").onload = TodaysDate; 

這一行:

TodaysDate(); 

因爲SPAN標籤不支持onload事件(見this answer)

試一試here