javascript - jQuery 识别被点击的子元素

标签 javascript jquery html css

jQuery 代码:

$(document).on('click', ".t_box", function(){
  var id = $(this).attr('id');

    alert(id);

 });

HTML代码:

        <div class="t_box" id="<%= t.id %>">
            <div class="tname">
                <div id="collapse">
                <%= form_tag('http://localhost:3000/ts/collapse_ts', :method => 'post', :remote => true ) do %>
                    <%= hidden_field_tag(:t_id, t.id) %>
                    <%= image_submit_tag "collapse.png" %>
                <% end %>
                </div> 

每当我单击页面上的 div #collapse 时,我的警报都会以 <%= t.id %> 响应,这意味着它没有看到我正在单击的实际元素。它应该显示“崩溃”。我已经尝试为 #collapse 设置 z-index:9999 但我仍然无法让 jQuery 注意到它。有什么想法吗?

谢谢!

最佳答案

使用target attributeevent获取触发事件的实际元素

$(document).on('click', ".t_box", function (e) {
    var id = e.target.id
    alert(id);
});

关于javascript - jQuery 识别被点击的子元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20604281/

相关文章:

javascript - Ionic 2 使用 .ts 而不是 .js 文件

jQuery 验证、ASP.NET MVC ModelState 错误(异步 POST)

javascript - 使用 javascript 将 var 分配给输入标记的 name 属性

javascript - ShadowDOM v1 - 在 lightdom 中更改输入文本

javascript - Highcharts 柱形图溢出绘图区域

javascript - 未指定输入节点。使用 YUI 库时

javascript - Raphael.js - 对圆使用填充属性,使圆中的元素消失。如何避免这种情况?

jquery - 滚动后更改 css 标题

javascript - 折叠具有初始状态的面板

android - 强制页面在 android native 浏览器上重新加载