I'm trying to find out what data/error jquery's .load() method is returning in the following code (the #content el开发者_如何学编程ement is blank so I assume there is some kind of error).
- Where do I find in Firebug what content or error .load() is returning?
- How can I use console.log to find out at least what content is being returned?
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<script type="text/javascript"
src="http://www.google.com/jsapi"></script>
<script type="text/javascript">
google.load("jquery", "1.3.2");
google.setOnLoadCallback(function() {
$('#loadButton').click(loadDataFromExernalWebsite);
});
function loadDataFromExernalWebsite() {
console.log("test");
$('#content').load('http://www.tanguay.info/web/getdata/index.php?url=http://www.tanguay.info/knowsite/data.txt', function() {
alert('Load was performed.');
});
}
</script>
</head>
<body>
<p>Click the button to load content:</p>
<p id="content"></p>
<input id="loadButton" type="button" value="load content"/>
</body>
</html>
The 'Net' tab of Firebug should show you all HTTP requests (including any from other domains)
There is no error. Due to SOO (Same Origin Policy) for XMLHttpRequest, since you are requesting from a remote host (not the same domain as your application). XMLHttpRequest will just return nothing.
But if you modify your .load callback method signature to function(response, status, xhr) {...}
the data returned will be in response
. But in your case there will be nothing there.
I would suggest you to install firequery and you can detect easily jquery problem.
Try
$("#content").load("http://www.tanguay.info/web/getdata/index.php?url=http://www.tanguay.info/knowsite/data.txt", function(response, status, xhr) {
if (status == "error") {
console.log("Error code :" + xhr.status); // error code
console.log ("Error text :" + xhr.statusText); // error text
}
});
精彩评论