如何找到正在点击的按钮的id ?
<button id="1" onClick="reply_click()"></button>
<button id="2" onClick="reply_click()"></button>
<button id="3" onClick="reply_click()"></button>
function reply_click()
{
}
如何找到正在点击的按钮的id ?
<button id="1" onClick="reply_click()"></button>
<button id="2" onClick="reply_click()"></button>
<button id="3" onClick="reply_click()"></button>
function reply_click()
{
}
当前回答
<button id="1" onClick="reply_click(this)"></button>
<button id="2" onClick="reply_click(this)"></button>
<button id="3" onClick="reply_click(this)"></button>
function reply_click(obj)
{
var id = obj.id;
}
其他回答
使用纯javascript,你可以做到以下几点:
var buttons = document.getElementsByTagName("button");
var buttonsCount = buttons.length;
for (var i = 0; i < buttonsCount; i += 1) {
buttons[i].onclick = function(e) {
alert(this.id);
};
}
检查它在JsFiddle
如果您不想传递任何参数给onclick函数,只需使用event。目标获取被单击的元素:
<button id="1" onClick="reply_click()"></button>
<button id="2" onClick="reply_click()"></button>
<button id="3" onClick="reply_click()"></button>
function reply_click()
{
// event.target is the element that is clicked (button in this case).
console.log(event.target.id);
}
您需要将ID作为函数参数发送。这样做:
<button id="1" onClick="reply_click(this.id) "“> B1 > < /按钮 <button id="2" onClick="reply_click(this.id) "“> B2 > < /按钮 <button id="3" onClick="reply_click(this.id) "“> B3 > < /按钮 <脚本type = " text / javascript”> 函数reply_click (clicked_id) { 警报(clicked_id); } > < /脚本
这将发送ID This。Id为clickked_id,可以在函数中使用。在这里看到它的行动。
这将记录被单击元素的id: addFields。
<button id="addFields" onclick="addFields()">+</button>
<script>
function addFields(){
console.log(event.toElement.id)
}
</script>
(我认为id属性需要以字母开头。可能是错的。)
你可以选择事件委托……
<div onClick="reply_click()">
<button id="1"></button>
<button id="2"></button>
<button id="3"></button>
</div>
function reply_click(e) {
e = e || window.event;
e = e.target || e.srcElement;
if (e.nodeName === 'BUTTON') {
alert(e.id);
}
}
...但这要求您对古怪的事件模型相对熟悉。