निम्नलिखित कोड में, मैं सब करने की कोशिश कर रहा हूं कि एक jQuery.ajax कॉल से HTTP प्रतिक्रिया कोड प्राप्त करना है। फिर, यदि कोड 301 है (स्थायी रूप से स्थानांतरित), तो 'स्थान' प्रतिक्रिया शीर्षलेख प्रदर्शित करें:
<?xml version="1.0" encoding="utf-8"?>
<!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" xml:lang="en" lang="en">
<head>
<title>jQuery 301 Trial</title>
<script src="http://code.jquery.com/jquery-1.5.1.min.js"></script>
<script type="text/javascript">
function get_resp_status(url) {
$.ajax({
url: url,
complete: function (jqxhr, txt_status) {
console.log ("Complete: [ " + txt_status + " ] " + jqxhr);
// if (response code is 301) {
console.log ("Location: " + jqxhr.getResponseHeader("Location"));
// }
}
});
}
</script>
<script type="text/javascript">
$(document).ready(function(){
$('a').mouseenter(
function () {
get_resp_status(this.href);
},
function () {
}
);
});
</script>
</head>
<body>
<a href="http://ow.ly/4etPl">Test 301 redirect</a>
<a href="http://cnn.com/not_found">Test 404 not found</a>
</body>
</html>
क्या कोई इंगित कर सकता है कि मैं कहां गलत हो रहा हूं? जब मैं फायरबग में 'jqxhr' ऑब्जेक्ट की जांच करता हूं, तो मुझे स्थिति कोड नहीं मिल सकता है, न ही 'स्थान' प्रतिक्रिया हैडर। मैंने 'पूर्ण' की अंतिम पंक्ति में विराम बिंदु निर्धारित किया है।
बहुत धन्यवाद।