jQuery点击事件从未触发

jQuery click event never triggered

本文关键字:事件 jQuery      更新时间:2023-09-26

我有以下javascript代码:

$(function (){
    $('a.folder').click(function() {
       // code goes here ...
    }
});

和以下html代码:

<a class="folder" href="GetFilesAndFolders?rootFolder=Exigences">Etudes de cas</a>

每当我点击链接时,就永远无法访问javascript代码。我必须说,这个html代码是在页面加载后动态生成的。这是原因吗?有什么变通办法吗?

当您附加点击处理程序时,您的锚点可能不存在,请尝试使用以下方法:

$(function (){
    $(document.body).on('click', 'a.folder', function() {
       // code goes here ...
    });
});

使用此事件委派,即使您的锚点是在此代码之后动态创建的,click事件也会触发。

$(document).ready(function() {
  $("body").on("click", "a.folder", function(e) {
    e.preventDefault();
    alert('a .folder was clicked');
  });
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<a class="folder" href="GetFilesAndFolders?rootFolder=Exigences">Etudes de cas</a>