jQuery使用.on(load)来加载ajax加载的内容
jQuery use .on(load) with ajax loaded content
我有一个网页与AJAX加载的内容。如果我点击"export",内容会重新加载,并使用PHP生成一个HTML元素:
<a style='"display:none;'" id='"menue-export-link'" href='"download/".$this->select->downloadcsv."'"></a>
现在我想自动开始下载,所以我编写了以下JavaScript代码来在a-Element加载时开始下载:
$(document).ready(function () {
$(document).on('load', '#menue-export-link', function() {
console.log('click export');
$('#menue-export-link').click();
$('#menue-export-link').remove();
});
});
但是什么都没发生,有人知道吗?
首先,html锚元素没有load
或onload
事件。因此,正如@The F所说,您必须在ajax成功回调中触发下载。记得在DOM中添加html之后找到并触发它。关于jQuery ajax的更多信息http://api.jquery.com/jquery.ajax/
现在是触发下载部分。触发导致导航的点击事件有点棘手。下面的问题很好地解答了jQuery:如何触发锚链接's点击事件和如何通过jquery模拟锚点点击?
你的js被触发时,你的主页加载和#menue-export-link
可能不存在的时间。如果使用$.ajax
来加载该链接,请将javascript放入成功回调中,以确保链接存在或在触发代码之前正在加载。
$(document).on("click", "#menue-export-link", function() {
console.log("click export");
});
相关文章:
- 如何更改jquerymobile中默认的加载ajax加载程序gif
- 无法在 IE6 和 IE7 上加载 ajax
- 页面刷新后重新加载 ajax 检索到的数据
- 清理在加载 Ajax 内容时添加的 CSS
- jquery选项卡加载Ajax内容
- Grails:多个加载ajax调用,但只有一个打印到控制台
- 如何检测通过JSON数据引用的图像何时加载AJAX
- 加载ajax数据时出现jVectorMap问题
- JQuery在加载ajax时阻止链接工作
- 如何在不重新加载ajax的情况下在datatable上.draw()或添加行
- 替换超链接默认操作以加载 AJAX 请求
- 高图表不使用加载 ajax 的数组进行渲染
- 带有 OnClick 的 jQuery 链接标记 href 需要单击两次才能加载 AJAX
- 悬停两次以加载 ajax
- 获取加载 ajax 的文档信息
- 使用 Jquery 在 AJAX 内部加载 AJAX
- 为什么当页面加载 AJAX 时我的 URL 之间没有空格
- 在当前页面中加载一个新的谷歌地图,加载AJAX
- 当滚动达到 80% 时加载 ajax
- 图像滑块未加载 Ajax 请求