Так что я был в предположении, что эта функцияJavascript button.onclick не работает, как я думал
button.onclick = exampleFunk;
даст мне обработчик на каждой кнопке, когда я нажимаю их, но это не так. При замене его на:
button.onclick = alert("bananas");
Я получаю оповещения на странице при загрузке. Проблема уже решена с этим:
button.setAttribute("onclick", "removeIssue(this)");
Из любопытства ... Что происходит?
отредактирован расположение поста
EDIT
var issues = [];
window.onload = function() {
//alert("venster geladen");
issuesToList()
}
function issuesToList(data) {
/*alert(
"array length is " + data.issues.length + "\n" +
"total_count is " + data.total_count + "\n" +
"limit is " + data.limit + "\n" +
"offset is " + data.offset + "\n" + ""
);*/
for (i = 0; i < data.issues.length; i++) {
issue = data.issues[i];
createIssue(issue);
}
}
function createIssue(issue){
var id = issue.id;
var tracker = issue.tracker;
var status = issue.status;
var priority = issue.priority;
var subject = issue.subject;
var description = issue.description;
var assignee = issue.assignee;
var watchers = issue.watchers;
var ticket = new Issue(id, tracker, status, priority, subject, description, assignee, watchers);
issues.push(ticket);
var button = document.createElement("button");
button.innerHTML = "-";
button.onclick = function(){ alert("bananas")};
//button.setAttribute("onclick", "removeIssue(this)");
var item = document.createElement("div");
item.setAttribute("id", id);
item.appendChild(button);
item.innerHTML += " " + subject;
var container = document.getElementById("container");
container.appendChild(item);
}
function removeIssue(e){
var key = e.parentNode.getAttribute("id");
var count = issues.length;
if(confirm("Confirm to delete")){
for(i=0; i<count; i++){
if (issues[i].id == key){
issues.splice(i,1);
var element = document.getElementById(key);
element.parentNode.removeChild(element);
}
}
}
}
function Issue(id, tracker, status, priority, subject, description, assignee, watchers){
this.id = id;
this.tracker = tracker;
this.status = status;
this.priority = priority;
this.subject = subject;
this.description = description;
this.assignee = assignee;
this.watchers = watchers;
}
EDIT
<body>
<h1>List of Issues</h1>
<div id="container"></div>
<script src="http://www.redmine.org/issues.json?limit=10&callback=issuesToList"></script>
</body>
вы можете попробовать это button.addEventListener («щелчок», функция() {Alert ("оповещать");}); ? – Sushil
button.addEventListener («click», alert («alert»)); Я попробовал это. потому что ваш @sushil также не работал. Получение оповещений на загрузке страницы снова – Josephus87
попробуйте вызвать его в функции onload() – Sushil