我正在尝试使用以下代码打印页面元素:
$('#some_button').click(function(){
var url = window.location.href;
var contents = $.get(url);
alert(contents.responseText);
});
但是这会返回一个空白字符串,并且尝试打印contents.status
会给出错误:
Uncaught Error: INVALID_STATE_ERR: DOM Exception 11
此代码在浏览器控制台中运行良好,因此看起来这是一个加载状态问题。但是因为这是一个点击监听器,我不知道如何解决这个问题。
答案 0 :(得分:2)
$.get
是异步的,因此请使用它:
$('#some_button').click(function(){
var url = window.location.href;
$.get(url, function(r){
alert(r);
});
});
如果要同步使用它,请在参数中使用async : false
:
var contents = $.get(url, {
async : false
});
请注意,这会占用浏览器。