javascript - 从 JQuery 中动态创建的数据获取点击事件

标签 javascript html ajax jquery dynamic

下面的代码是使用 Ajax 调用动态生成的,并放置在名为 studentresults 的硬编码 div 中。

<div id="studentresults" class="row span8 offset2">
  <table id="tablestudent" class="table table-striped table-hover center-table">
    <thead>Heading for my table</thead<
      <tbody>
        <tr id="showstudents">
          <td>29041</td>
          <td>jan</td>
          <td>jan</td>
          <td>
            <a class="btn" href="#">View Results »</a>
          </td>
          <td id="29041">
            <a id="29041" class="btn showstudent" href="#">Delete Student » </a>
          </td>
        </tr>
        <tr id="showstudents">
           .... another dynamic record from Ajax...
        </tr>
     </tbody>
  </table>
</div>

这很好用。但是,我想对 Delete Student 标签进行另一个 Ajax 调用。我不明白如何为这个动态内容编写 jQuery 点击函数。

JQuery 调用不起作用

$('.showstudent').click(function(){

 alert('In click');

});

然而,这在硬编码的 div container 中有效

 $('#studentresults').click(function () {

 alert('In click');

});

如何访问动态 <a>内容

最佳答案

如果是动态元素,您需要使用基于事件传播的事件监听器。

当您使用 $('.showstudent').click(..) 注册事件处理程序时,它会在执行时执行选择器,动态元素可能不存在时间,因此事件处理程序不会附加到这些元素

$(document).on('click','.showstudent', function(){
    alert('In click');
});

关于javascript - 从 JQuery 中动态创建的数据获取点击事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17310724/

相关文章:

javascript - 丹麦地址的正则表达式

javascript - 显示内容 div runat ='server'

java - 使用 html javafx 的工具提示

javascript - 从 HTML 中分离 jQuery

ajax - 等待ajax响应时显示加载gif

javascript - 如何通过 npm cli 将环境变量传递给 rollup.config.js?

javascript - 如何在刷新时更改 Bootstrap 表属性

php - HTML5 数据库连接丢失

javascript - 单击选定的单选按钮时发出警报消息

javascript - AJAX/JSON 以及可能的 Jquery 事件