javascript - 点击事件不工作 jQuery

标签 javascript jquery html

我正在尝试使用 jQuery 处理点击事件

上传成功后,我正在使用 jQuery 创建以下内容:

$("#uploadedImage").append( "<div class='img-wrap'>
    <span class='deletePhoto'>&times;</span>
    <img data-id='"+files[i]+"' src='"+asset_url+"uploads/ad_photo/"+files[i]+"'>
  </div>
  <span class='gap'></span>");

为了处理上面创建的 div 的点击事件,我写了这个:

$('.img-wrap .deletePhoto').click(function() {
  var id = $(this).closest('.img-wrap').find('img').data('id');
  alert(id);
});

上面的代码工作正常并创建了所有的 div,但是当我点击 deletePhoto span 时。没有显示 jQuery 警报。

任何帮助或建议都会有很大的帮助。

提前致谢

最佳答案

委托(delegate)事件并按照建议进行更改:

$("#uploadedImage").on('click', '.deletePhoto', function() {

您必须将您的事件委托(delegate)给最近的静态父 #uploadedImage 在您的情况下,它在页面加载时可用,例如包含新附加的 div 的容器和图像。

尽管 $(document) 和 $(document.body) 始终可用于委托(delegate)事件。

关于javascript - 点击事件不工作 jQuery,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22810075/

相关文章:

php - MYSQL/PHP/JQUERY - Blob 进入图片库,如何解决问题?

javascript - 如何设计 sweetAlert

html - 如何创建指向页面的链接并在该页面的 iframe 中加载特定内容

Javascript -= 命令乘以每个循环

javascript - 使用 ui-router 进行 "main"布局?

javascript - 如何在 div 上追加一个新的 div 并将 var 放入该新的 div 中

css - SVG Logo 的上方/下方有不需要的空白,仅在 Google 网站管理员工具页面缩略图中

javascript - 创建类似亚马逊的横幅 - 请参阅图片

javascript - onClick 监听器未触发 react

javascript - JavaScript 中的排列?