从<a> tag inside the same tag in html5</a>获取ID

时间:2012-12-20 03:43:24

标签: javascript html5

我想在同一个标​​签内获取一个标签的id,然后将其作为javascript的参数发送,如果可能的话。 这样的事情就是我现在尝试过的:

var entity = document.createElement("a");
entity.setAttribute("id", name);
entity.setAttribute("href", "javascript:playAudio('"+path+"', this.id)");

我希望它是动态的,这样如果id改变了javascript调用是用新的id完成的。

3 个答案:

答案 0 :(得分:2)

您应该附加一个事件处理程序,而不是将JavaScript注入href属性

entity.setAttribute('href', '#');
entity.addEventListener('click', function() {
    playAudio(path, this.id);
    return false;
}, false);

答案 1 :(得分:2)

在这种情况下,使用EventListener更合适:

var entity = document.createElement("a");
entity.setAttribute("id", name);
entity.addEventListener("click", function(e){
    playAudio(path, this.id);
    e.preventDefault();
});

答案 2 :(得分:0)

将javascript粘贴在onclick上。 href中的this指的是窗口而非锚点。

var entity = document.createElement("a");
entity.setAttribute("id", name);
entity.setAttribute("onclick", "playAudio('"+path+"', this.id)");