0

0

如何通过点击的 div 获取正确的 ID

碧海醫心

碧海醫心

发布时间:2025-11-22 13:01:26

|

182人浏览过

|

来源于php中文网

原创

如何通过点击的 div 获取正确的 id

本文旨在解决动态生成的 HTML 元素中,点击事件无法获取正确 ID 的问题。通过事件委托和 DOM 元素查找,我们将提供一种可靠的方法,确保点击事件能够准确地获取与点击元素关联的 ID 值。本文将提供详细的代码示例和解释,帮助开发者解决类似问题。

在动态生成 HTML 内容时,特别是使用循环生成多个相似元素时,经常会遇到点击事件处理中 ID 获取不正确的问题。 根本原因在于,事件处理函数可能错误地选择了页面上的第一个匹配元素,而不是实际被点击的元素。要解决这个问题,需要使用事件委托和正确的 DOM 元素查找方法。

问题分析

原始代码中,点击 .histor-uten 元素时,使用 $("input[name='id_utt']").val() 来获取 ID。 这种方式会选取页面上第一个 name 属性为 id_utt 的 input 元素的值,而不是被点击元素内部的 input 元素的值。

解决方案:事件委托和 DOM 元素查找

以下代码演示了如何使用事件委托和 DOM 元素查找来解决这个问题:

var data = [
   {codigo: "1", Utente: "Teste", },
   {codigo: "2", Utente: "Teste1", },
   {codigo: "3", Utente: "Teste2",},
   {codigo: "4", Utente: "Teste3", },
   {codigo: "5", Utente: "Teste4", },
   {codigo: "6", Utente: "Teste5", },
];

$(document).on('click', '.dad-inf', function(){

var linha = ``;

for (var i = 0; i < data.length; i++) {
codigo = data[i].codigo;
Utente = data[i].Utente;

linha += ``;
   }

   $(".tesssste").html(linha);

});

$(document).on('click', '.histor-uten', function(e){
    let parent = $(this);
    // First make sure it selects the element with the histor-uten class
  if(!parent.hasClass('histor-uten')){
    parent = $(this).closest('.histor-uten');
  }

    // Get the child input from the parent instead of the first one in the document
  var id_utt = $(parent.find("input[name='id_utt']")).val();
  console.log(id_utt);

});

$(function() {
    $(".btn-show").click(function(e) {
      e.preventDefault();
      el = $(this).data('element');
      $(el).show();
      $("section > div").not(el).hide();
    });
});

代码解释

wordpress淘宝客主题:Love Shopping红色大气主题
wordpress淘宝客主题:Love Shopping红色大气主题

易秀购主题网收集到一款红色的淘宝客主题很不错的,有点想值得买的模板,很适合做淘宝客的童鞋,这款主题需要先去注册阿里妈妈并得到联盟的ID,直接调用淘点金+短代码,大大的方便了添加商品,有简单的SEO功能。如果觉得该模板的SEO功能比较单一不能够满足你,那么你也可以搜索wordpress的SEO插件,很方便。至于如何运营就看自己的了,有大把的人做淘宝客赚了钱,如果通过自己的营销的确可以做的很不错。

下载
  1. 事件委托: 使用 $(document).on('click', '.histor-uten', function(e){ ... }); 将点击事件绑定到 document 对象上,然后通过选择器 .histor-uten 来指定事件处理函数只处理点击 .histor-uten 元素的事件。 这种方式被称为事件委托,可以有效地处理动态生成的元素。

  2. 查找父元素:let parent = $(this);, this 关键字指向实际被点击的元素。 接下来,使用 $(this).closest('.histor-uten') 确保 parent 变量始终指向具有 histor-uten 类的最近的祖先元素。

  3. 查找子元素: 使用 $(parent.find("input[name='id_utt']")).val(); 在被点击元素的父元素内部查找 name 属性为 id_utt 的 input 元素,并获取其值。 parent.find() 确保只在当前被点击元素的范围内查找子元素,从而避免选取到错误的 input 元素。

HTML 代码

[email protected]/dist/css/bootstrap.min.css">



Utentes

总结

通过使用事件委托和正确的 DOM 元素查找方法,可以有效地解决动态生成的 HTML 元素中点击事件 ID 获取不正确的问题。 这种方法不仅可以确保获取正确的 ID,还可以提高代码的效率和可维护性。 在处理动态生成的 HTML 内容时,建议始终使用事件委托和精确的元素选择器,以避免类似问题的发生。

相关专题

更多
html版权符号
html版权符号

html版权符号是“©”,可以在html源文件中直接输入或者从word中复制粘贴过来,php中文网还为大家带来html的相关下载资源、相关课程以及相关文章等内容,供大家免费下载使用。

608

2023.06.14

html在线编辑器
html在线编辑器

html在线编辑器是用于在线编辑的工具,编辑的内容是基于HTML的文档。它经常被应用于留言板留言、论坛发贴、Blog编写日志或等需要用户输入普通HTML的地方,是Web应用的常用模块之一。php中文网为大家带来了html在线编辑器的相关教程、以及相关文章等内容,供大家免费下载使用。

646

2023.06.21

html网页制作
html网页制作

html网页制作是指使用超文本标记语言来设计和创建网页的过程,html是一种标记语言,它使用标记来描述文档结构和语义,并定义了网页中的各种元素和内容的呈现方式。本专题为大家提供html网页制作的相关的文章、下载、课程内容,供大家免费下载体验。

466

2023.07.31

html空格
html空格

html空格是一种用于在网页中添加间隔和对齐文本的特殊字符,被用于在网页中插入额外的空间,以改变元素之间的排列和对齐方式。本专题为大家提供html空格的相关的文章、下载、课程内容,供大家免费下载体验。

245

2023.08.01

html是什么
html是什么

HTML是一种标准标记语言,用于创建和呈现网页的结构和内容,是互联网发展的基石,为网页开发提供了丰富的功能和灵活性。本专题为大家提供html相关的各种文章、以及下载和课程。

2886

2023.08.11

html字体大小怎么设置
html字体大小怎么设置

在网页设计中,字体大小的选择是至关重要的。合理的字体大小不仅可以提升网页的可读性,还能够影响用户对网页整体布局的感知。php中文网将介绍一些常用的方法和技巧,帮助您在HTML中设置合适的字体大小。

503

2023.08.11

html转txt
html转txt

html转txt的方法有使用文本编辑器、使用在线转换工具和使用Python编程。本专题为大家提供html转txt相关的文章、下载、课程内容,供大家免费下载体验。

311

2023.08.31

html文本框代码怎么写
html文本框代码怎么写

html文本框代码:1、单行文本框【<input type="text" style="height:..;width:..;" />】;2、多行文本框【textarea style=";height:;"></textare】。

423

2023.09.01

Java 桌面应用开发(JavaFX 实战)
Java 桌面应用开发(JavaFX 实战)

本专题系统讲解 Java 在桌面应用开发领域的实战应用,重点围绕 JavaFX 框架,涵盖界面布局、控件使用、事件处理、FXML、样式美化(CSS)、多线程与UI响应优化,以及桌面应用的打包与发布。通过完整示例项目,帮助学习者掌握 使用 Java 构建现代化、跨平台桌面应用程序的核心能力。

36

2026.01.14

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Sass 教程
Sass 教程

共14课时 | 0.8万人学习

Bootstrap 5教程
Bootstrap 5教程

共46课时 | 2.9万人学习

CSS教程
CSS教程

共754课时 | 19万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

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