如何找到正在点击的按钮的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()
{
}
当前回答
抱歉,这是一个很晚的回答,但如果你这样做的话,它真的很快:-
$(document).ready(function() {
$('button').on('click', function() {
alert (this.id);
});
});
这将获得单击的任何按钮的ID。
如果你想要在某个地方点击按钮的值,就把它们放在容器中
<div id = "myButtons"> buttons here </div>
并更改代码为:-
$(document).ready(function() {
$('.myButtons button').on('click', function() {
alert (this.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,可以在函数中使用。在这里看到它的行动。
虽然晚了8年多,但为了从(我的)HTML中获得动态生成的id,我使用了php循环的索引来增加按钮id。我将相同的索引连接到输入元素的ID,因此我最终得到ID ="tableview1"和button ID ="1",以此类推。
$tableView .= "<td><input type='hidden' value='http://".$_SERVER['HTTP_HOST']."/sql/update.php?id=".$mysql_rows[0]."&table=".$theTable."'id='tableview".$mysql_rows[0]."'><button type='button' onclick='loadDoc(event)' id='".$mysql_rows[0]."'>Edit</button></td>";
在javascript中,我将按钮单击存储在一个变量中,并将其添加到元素中。
function loadDoc(e) {
var btn = e.target.id;
var xhttp = new XMLHttpRequest();
var page = document.getElementById("tableview"+btn).value;
//other Ajax stuff
}
(我认为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);
}
}
...但这要求您对古怪的事件模型相对熟悉。
使用纯javascript: 我知道有点晚了,但也许对未来的人有帮助:
在HTML部分:
<button id="1" onClick="reply_click()"></button>
<button id="2" onClick="reply_click()"></button>
<button id="3" onClick="reply_click()"></button>
在Javascipt控制器中:
function reply_click()
{
alert(event.srcElement.id);
}
这样,我们就不必在调用javascript函数时绑定Element的“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