我的代码如下:<div id = "trg" onclick = "swap()">
。所以我的交换函数需要获取调用它的标记的ID。在这种情况下"trg"
。我的功能就像:
function swap(){
document.getElementById( this??? ).id = "trgClicked"; //I want to change its ID
document.getElementById( this??? ).className = "trgClicked"; //and class
}
我知道我可以使用特定于元素的ID,但是我有很多这些按钮,如果我可以获得调用它的元素的ID,那将更简单。谢谢你的帮助!
答案 0 :(得分:3)
您可以尝试此操作(使用inline
事件this
将无法按预期工作,如另一个答案中所述)
function swap(element)
{
alert(element.id); // trg
}
<div id="trg" onclick="swap(this)">Click Me</div>
答案 1 :(得分:1)
这应该有用。
HTML
<div id = "trg" onclick = "swap.call(this)">
的javascript
function swap(){
this.id = "trgClicked"; //I want to change its ID
this.className = "trgClicked"; //and class
}
答案 2 :(得分:0)
您可以将其作为参数传递给函数
答案 3 :(得分:0)
我相信您正在询问如何使用函数轻松更改元素的id或类。 这对于id来说是完美的。
function switched(element, attrToChange, newAttribute){
var selection = document.getElementById(element);
var attr = selection.setAttribute(attrToChange, newAttribute);
}
switched('scores', 'id', 'scored');
另一个用于课程改变
function switched(element, attrToChange, newAttribute){
var selection = document.getElementsByClassName(element)[0];
var attr = selection.setAttribute(attrToChange, newAttribute);
}
switched('scores', 'id', 'scored');