我對HTML和JavaScript是全新的,我完全失去了。動態創建列表項onclick
我想創建一個待辦事項列表,其中輸入添加到列表的頂部,並且當列表中的項目被點擊時,它將被刪除。
我想避免使用JQuery或純js以外的任何東西。
<!DOCTYPE html>
<html>
<script type="text/JavaScript">
var number_of_items = 0;
var list = [];
var list_container = document.createElement("div");
list_container.id = "container";
function makelist(){
list_container.innerHTML = "";
list.unshift(document.getElementById("todo").value);
++number_of_items;
document.getElementsByTagName("body")[0].appendChild(list_container);
var list_element = document.createElement("ul");
list_container.appendChild(list_element);
for(var i=0 ; i < number_of_items ; ++i){
var list_item = document.createElement("li");
list_item.innerHTML = list[i];
//The problem is here
list_item.onClick = function(){
alert("working");
list.splice(i, 1);
--number_of_items;
makelist();
}
list_element.appendChild(list_item);
}
}
</script>
<body>
Todo: <input type="text" id="todo">
<input type="button" value="Submit" onclick="makelist()" />
</body>
</html>
問題是,list_item onclick函數從未激活。爲什麼?
對於我提出問題的方式有任何問題,我很抱歉。
你怎麼知道的功能不 '激活'?你有任何錯誤? – putvande 2014-12-10 23:12:19
什麼都沒有發生。我在函數中加入了一個警告來測試它,警報從未出現過。 – DoctorMcbob 2014-12-10 23:13:52
您是否在輸入字段中添加了值?否則,你會得到一個錯誤。 – putvande 2014-12-10 23:14:20