javascript - 对通过 Ajax 加载但未在源代码中打印的 html 运行 Javascript 或 Jquery

标签 javascript jquery html ajax

我的页面上有一个链接,如果单击该链接,将通过 Ajax 生成一个弹出窗口。 (弹出代码不受我控制)

现在我想通过我的代码 jQuery 在该弹出窗口的链接上添加功能。

页面加载后,此弹出窗口不会在源代码中打印。显然 jQuery 找不到这个链接。

如何在此 ajax 弹出窗口中的此链接上添加 click() 触发器功能?

最佳答案

如果我正确理解了问题,则不会触发您的 click 事件,因为目标是在附加事件后加载的。要修复它,您可以取消“[on]”( http://api.jquery.com/on/ ) 方法。

$("#myModal").on( "click", "a#myLink", function() {
  console.log( "click fired");
});

$("#modalContainer").on( "click", "#myTargetElement", function() 
{
  console.log("click fired");
});

$('#btn').click(function()
               {
  $('#modalContainer').html("<div id='myTargetElement'>ajax loaded content</div>")
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="modalContainer">initial content</div>
<button id=btn>fake ajax load</button>

关于javascript - 对通过 Ajax 加载但未在源代码中打印的 html 运行 Javascript 或 Jquery,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46618570/

相关文章:

javascript - 有没有一种方法可以让我不使用数据库将上传的图像放入 html 页面?

java - Android webview输入类型文件

html - 当单元格跨越到 n 列时,如何将表格列向下移动?

javascript - 在 Javascript 中从浏览器复制图像到剪贴板?

jquery - 带有 CSS 的 jScrollPane 主题

jquery - 在 Firefox 中分隔下拉菜单的内容

javascript - 从 Kendo UI dateTimepicker 隐藏/禁用周末

javascript - 标识符 'authService' 指的是组件的私有(private)成员

javascript - 如何解决无法在家中重现的客户端Javascript错误?

javascript - ng-grid 不适用于文件引用的单元格模板