Javascript 如果我从iframe内部提取数据,Ajax请求将无效
我有一个iframe在一个网站上,我正试图刮。尽管我想收集的大部分信息都在iframe中,但我仍然希望在顶层维护javascript执行上下文。 所有脚本都是通过Chrome(版本86.0.4240.111(官方版本)(64位)执行的 )控制台 我使用jQuery获取iframe元素并从其属性中提取URL:Javascript 如果我从iframe内部提取数据,Ajax请求将无效,javascript,jquery,ajax,Javascript,Jquery,Ajax,我有一个iframe在一个网站上,我正试图刮。尽管我想收集的大部分信息都在iframe中,但我仍然希望在顶层维护javascript执行上下文。 所有脚本都是通过Chrome(版本86.0.4240.111(官方版本)(64位)执行的 )控制台 我使用jQuery获取iframe元素并从其属性中提取URL: let url = $('#iframe')[0].interesting_url; 之后,我对该URL执行HTTP请求,并从接收到的数据中提取另一个URL: let url = $('#
let url = $('#iframe')[0].interesting_url;
之后,我对该URL执行HTTP请求,并从接收到的数据中提取另一个URL:
let url = $('#iframe')[0].interesting_url;
$.get(url, function(data, status){
if (status == "success") {
let another_url = data.match(...)[1];
foo(another_url);
}
});
在foo
内部,我们执行最后一个AJAX请求,但它不会触发。函数在请求后返回,而不调用回调
foo
:
function foo(another_url){
$.get(another_url, function(data, status){
debugger; // Never gets triggered!
if (status == "success") {
...
}
});
}
尽管第一个请求触发得很好,但是foo
中的请求不会触发。使用Chrome的调试工具,我检查了网络选项卡,但它也不在那里。从iframe接收的URL是正确的