2016-06-04 5 views
0

Как динамически создавать функцию onclick в гиперссылке в javascript?Динамически создавать элемент привязки события onclick - javascript

Это код, который содержит несколько гиперссылок на одной странице. Я попытался просто добавить событие OnClick к а-элемента, то есть

a.onclick=myfunction() 

но при загрузке страницы со списком этих ссылок - функция автоматически вызывается для каждой ссылки.

Как выглядит мой код - я думаю, я должен использовать id для каждой ссылки?

var a = document.createElement('a'); 
    var linkText = document.createTextNode(child.innerHTML); 
    a.appendChild(linkText); 
    a.title = child.innerHTML; 
    a.href = "#stockContent" + i; 
    a.id = "link_id" + i; 

    ... 

я это итерационная переменная

+0

Я бы, конечно, привык вкладывать id в то, что вы хотите манипулировать. и просто сделайте что-то вроде «a.addEventListener (« onclick », function (event) {do stuff here})». Это сработает. Он не будет выполняться мгновенно - он выполнит только «onclick», имея прослушиватель событий :). Также возможно создать специальные методы/слушатели событий, если это необходимо. – hipkiss

ответ

2
a.onclick=myfunction() 

Будет ли установить возвращаемое значение myfunction в OnClick. То, что вы хотите, состоит в следующем:

a.onclick=myfunction 
1

Вы можете задать функцию OnClick двумя способами:

1) с именем функции:

function myFunction(){ 
    alert('hello'); 
} 

a.onclick = myFunction; 

2) с анонимной функцией:

a.onclick = function(){ 
    alert('hello'); 
}; 
Смежные вопросы