2014-05-13 71 views
-1

我有一個測試按鈕設置,當它被點擊時工作,它能夠顯示警報或確認窗口。不過,我希望它顯示項目列表,我有列表的代碼,但我似乎無法啓動單擊按鈕時。我使用所有的DOM,所以不需要jquery。謝謝在DOM上單擊按鈕後,如何調用函數

var creatbtndiv = document.createElement("div"); 
var creatbtn = document.createElement("button"); 
creatbtn.innerHTML = "Click Me"; 

creatbtndiv.appendChild(creatbtn); 

document.body.appendChild(creatbtndiv); 



var list = function (name) { 
    var creatDiv = document.createElement("div"); 
    creatDiv.id = "submenudiv"; 
    creatDiv.className = "submenudiv"; 

    var creatul = document.createElement("ul"); 
    for(i = 0; i < 5; ++i){ 
    li = doument.createElement("li"); 
    li.innerHTML = "Submenu" + index; 
    creatul.appendChild(li); 
    } 

    creatDiv.appendChild(creatul); 

    document.body.appendChild(name); 


}; 



creatbtndiv.onclick = function() { 
    var alert = confirm("yes master"); 
    list(); 
}; 
+0

您的控制檯是否會給您一條錯誤消息? (很適合去香草btw) –

+0

這在http://jsfiddle.net工作 - 呃,對不起,我剛剛看到彈出窗口,而不是列表。 – Leo

回答

0
for(i = 0; i < 5; i++){ 
li = document.createElement("li"); 
li.innerHTML = "Submenu" + i; <----------- Replace index with "i" 
creatul.appendChild(li); 
} 

creatDiv.appendChild(creatul); 

document.body.appendChild(creatDiv); <----------- Replace "name" with "createDiv" 
1

你的代碼有幾個語法錯誤。像doument,並使用變量index,當它應該是i。並且在List方法的末尾,在document.body.appendChild上,您應該傳遞creatDiv作爲參數。
看起來有些CopyPaste失誤安...

http://jsfiddle.net/ayvNZ/


這裏是工作代碼:

var creatbtndiv = document.createElement("div"); 
var creatbtn = document.createElement("button"); 
creatbtn.innerHTML = "Click Me"; 

creatbtndiv.appendChild(creatbtn); 

document.body.appendChild(creatbtndiv); 



var list = function() { 
    var creatDiv = document.createElement("div"); 
    creatDiv.id = "submenudiv"; 
    creatDiv.className = "submenudiv"; 

    var creatul = document.createElement("ul"); 
    for(i = 0; i < 5; ++i){ 
     li = document.createElement("li"); 
     li.innerHTML = "Submenu" + i; 
     creatul.appendChild(li); 
    } 

    creatDiv.appendChild(creatul); 
    document.body.appendChild(creatDiv); 
}; 



creatbtndiv.onclick = function() { 
    var alert = confirm("yes master"); 
    list(); 
}; 
1

這裏有一個正確的小提琴,你的代碼中有幾個錯誤它。 http://jsfiddle.net/8LZKc/

li = doument.createElement("li"); <-- should be document 

index沒有定義,你想i

name不是一個元素,你想creatDiv有INSEAD

0

文檔拼錯了列表項循環。索引不會在任何地方使用,切換到使用「我」的索引器。 Name參數未使用或未提供值,但creatDiv是您爲列表創建的目標元素。

var creatbtndiv = document.createElement("div"); 
var creatbtn = document.createElement("button"); 
creatbtn.innerHTML = "Click Me"; 

creatbtndiv.appendChild(creatbtn); 

document.body.appendChild(creatbtndiv); 

var list = function (name) { 
    var creatDiv = document.createElement("div"); 
    creatDiv.id = "submenudiv"; 
    creatDiv.className = "submenudiv"; 

    var creatul = document.createElement("ul"); 
    for (i = 0; i < 5; ++i) { 
     li = document.createElement("li"); 
     li.innerHTML = "Submenu" + i; 
     creatul.appendChild(li); 
    } 

    creatDiv.appendChild(creatul); 

    document.body.appendChild(creatDiv); 
}; 



creatbtndiv.onclick = function() { 
    var alert = confirm('yes master'); 
    list(); 
}; 
+0

感謝大家的幫助,真的很感激 – AtomicRevolution

相關問題