javascript - 怎么获得当前点击的按钮的id名?
天蓬老师
天蓬老师 2017-04-10 17:48:49
[JavaScript讨论组]

我设置了很多个按钮。
点击任意一个按钮,该按钮弹出一个弹窗。
我希望根据按钮的不同,弹窗的内容不同。
需要按钮的id名。

天蓬老师
天蓬老师

欢迎选择我的课程,让我们一起见证您的进步~~

全部回复(8)
高洛峰

尽量使用event.target.id,不要使用this.id
当使用事件委托的时候,this指向的是绑定监听事件的元素,而非被点击的元素。event.target.id则始终指向被点击的元素。

巴扎黑

<p id="test">test</p>
<script>
document.getElementById("test").onclick=function(){

    console.log(this.id)
}

</script>

阿神

一般都是绑定一个class,设置一个data-id

监测这个class的点击,然后获取当前点击的data-id

PHP中文网
DomElement=document.getElementById('myid');
DomElement.getAttribute('id');
阿神

e.target.id

黄舟

jquery 的办法

<body>
    

        <input id="t1" type="button" value='fff'>
        <input id="t2" type="button" value='fff'>
        <input id="t3" type="button" value='fff'>
        <input id="t4" type="button" value='fff'>

        <script type="text/javascript">
            $(document).ready(function(){
                $('input').each(function(){
                    alert($(this).attr('id'));
                });
            });
        </script>
  </body>
高洛峰

事件机制

        
        <button class="btn" id="a">aaa</button>
        <button class="btn" id="b">bbb</button>
        var btn = document.getElementsByTagName("button");

        document.body.onclick = function(event){    //冒泡处理
            var id = event.target.id;
            console.log(id);
        }
迷茫

假设你要的按钮是button,那么给button设置点击事件的回调函数:

button.addEventListener('click', function() {});

在事件回调函数中,第一个参数往往是事件对象,这个对象包含了事件相关的很多信息,e.target就是发生点击的实际元素,因此想要到button的ID 直接取e.target.id就行了。

button.addEventListener('click', function(e) {
    console.log(e.target.id);
});

需要补充一点的是,不建议直接给所有button元素逐一添加事件监听,一般是通过事件委托完成的,这方面可再了解下。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号