Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/388.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 确定在div中单击了哪个按钮_Javascript_Buttonclick - Fatal编程技术网

Javascript 确定在div中单击了哪个按钮

Javascript 确定在div中单击了哪个按钮,javascript,buttonclick,Javascript,Buttonclick,我有下面的HTML代码(我不能更改它),我想做一个javascript代码来确定从a到Z的哪个按钮被点击。你知道我该怎么做吗?这是我尝试过的,但我总是得到“字母表”的结果。我还可以写: document.getElementById("A").onclick = buton;, document.getElementById("B").onclick = buton; 在myMain函数中等等,但是有一个简单的解决方案吗 <html> <head> <

我有下面的HTML代码(我不能更改它),我想做一个javascript代码来确定从a到Z的哪个按钮被点击。你知道我该怎么做吗?这是我尝试过的,但我总是得到“字母表”的结果。我还可以写:

document.getElementById("A").onclick = buton;, 
document.getElementById("B").onclick = buton; 
myMain
函数中等等,但是有一个简单的解决方案吗

<html>
<head>
    <script>
        window.onload = myMain;
        function myMain() {
            document.getElementById("alphabet").onclick = buton;
        }
        function buton() {
            alert(this.id);
        }
    </script>
</head>
<body>
    <div id="alphabet">
        <button id="A">A</button> <button id="B">B</button> <button id="C">C</button> <button id="D">D</button> <button id="E">E</button> <button id="F">F</button> 
        <button id="G">G</button> <button id="H">H</button> <button id="I">I</button> <button id="J">J</button> <button id="K">K</button> <button id="L">L</button> 
        <button id="M">M</button> <button id="N">N</button> <button id="O">O</button> <button id="P">P</button> <button id="Q">Q</button> <button id="R">R</button> 
        <button id="S">S</button> <button id="T">T</button> <button id="U">U</button> <button id="V">V</button> <button id="W">W</button> <button id="X">X</button> 
        <button id="Y">Y</button> <button id="Z">Z</button>
    </div>
</body>
</html>

window.onload=myMain;
函数myMain(){
document.getElementById(“字母表”).onclick=buton;
}
函数buton(){
警报(this.id);
}
A B C D E F
G H I J K L
M N O P Q R
S T U V W X
Y Z
var buttonElements=document.queryselectoral(“#字母表按钮”);
对于(变量i=0;i
事件处理程序函数是在它们绑定到的元素的上下文中激发的,而不是在用于触发事件的元素的上下文中激发的

您需要捕获事件对象

function buton(event) {
然后看看点击的目标

var element = event.target
然后可以查看该元素的id

alert(element.id);

您可以使用事件对象

window.onload=myMain;
函数myMain(){
document.getElementById(“字母表”).onclick=buton;
}
布顿函数(e){
如果(e.target.tagName==‘按钮’){
警报(如target.id);
}
}

A.
B
C
D
E
F
G
H
我
J
K
L
M
N
O
P
Q
R
s
T
U
v
W
X
Y
Z
改用Jquery

HTML

<div>
   <input type="button" id="A"/>
   <input type="button" id="B"/>
 </div>

请尝试下面解释的代码:

 alert(e.target.id);
您可以使用
e.target.id.
e.target表示DOM对象,您可以访问它的所有属性和方法。

window.onload=myMain;
函数myMain(){
document.getElementById(“字母表”).onclick=buton;
}
布顿函数(e){
警报(如target.id);
}

A B C D E F
G H I J K L
M N O P Q R
S T U V W X
Y Z

这将引发异常,因为未定义
e
。@Quentin请检查整个代码。同时尝试重新编辑:“只更改一行”-您更改了多行。@Quentin感谢您指出这一点。.我想OP有代码:alert(This.id),通过一些代码修改,我用alert(e.target.id)实现了它;这就是那个回答背后的原因。。无论如何,如果弄错了,我会编辑那行,这正是我需要的!谢谢你+1
 $("button").Click(function(){
       alert($(this).attr("id"))
  })
 alert(e.target.id);