編輯#2目標: 的問題不存在了。這是某種範圍的問題。但現在它正在工作。我很抱歉給您帶來不便。事件代表團,這是爲什麼不工作,通過ID
在我的腳本的某一部分有一個事件代表團,並通過ID指定目標。但是當我運行它。行if(evt.target.id == ("subtaskSubmit" + subtaskCounter))
似乎根本不工作。這裏是我的代碼:
var subtaskCounter = 0;
aWholeTask.addEventListener("click", function(evt){
//other event targets specifications ..
if(evt.target.id == "divide"){
var subtaskInput = document.createElement("input"),
subtaskSubmit = document.createElements.button("submit"), // this is a special function i've made, don't bother about it. I've used it all over the place and it's working normally.
subtaskContainer = document.createElement("p");
subtaskContainer.style.marginLeft = "40px";
subtaskInput.id = "subtaskInput" + (++subtaskCounter);
subtaskInput.type = "text";
subtaskSubmit.id = "subtaskSubmit" + subtaskCounter;
subtaskContainer.appendChildren(subtaskInput,subtaskSubmit);
aWholeTask.appendChild(subtaskContainer);
}
if(evt.target.id == ("subtaskSubmit" + subtaskCounter)){
//this event is the one that not working when i press on that element
alert("hello");
}
});
編輯: 我已經做了一些修改調試代碼,結果是奇怪的:
var subtaskCounter = 0;
aWholeTask.addEventListener("click", function(evt){
//other event targets specifications ..
if(evt.target.id == "divide"){
var subtaskInput = document.createElement("input"),
subtaskSubmit = document.createElements.button("submit"), // this is a special function i've made, don't bother about it. I've used it all over the place and it's working normally.
subtaskContainer = document.createElement("p");
subtaskContainer.style.marginLeft = "40px";
subtaskInput.id = "subtaskInput" + (++subtaskCounter);
subtaskInput.type = "text";
subtaskSubmit.id = "subtaskSubmit" + subtaskCounter;
subtaskContainer.appendChildren(subtaskInput,subtaskSubmit);
aWholeTask.appendChild(subtaskContainer);
}
if(evt.target.innerHTML == "Submit"){
alert(evt.target.id == ("subtaskSubmit" + subtaskCounter));
//And this surprisingly returns false !
}
});
那麼,爲什麼evt.target.id == ("subtaskSubmit" + subtaskCounter)
回報false
?
爲什麼你有作爲事件處理程序的自我調用函數? – 2012-07-30 17:56:03
我只是不希望這兩個事件的變量對其他事件可見。 – 2012-07-30 17:56:44
我看到,還有其他處理程序...每個編號爲 – 2012-07-30 17:57:18