我得到了JS的問題:AJAX函數參數爲空?
在第1至第4行,我從DOM獲取所有「a」元素並獲得它們的hrefs。 以後我想通過AJAX重新加載URL,但是href無法正確到達......什麼錯誤?
$(document).ready(function(){
$('a').click(function(e){
ajaxReload($(this).attr('href'));
e.preventDefault();
});
});
function ajaxReload(href) {
var xmlhttp = null;
if (window.XMLHttpRequest) {
xmlhttp = new XMLHttpRequest();
}
// IE
else if (window.ActiveXObject) {
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.open("GET", href, true);
xmlhttp.onreadystatechange = function() {
if(xmlhttp.readyState != 4) {
document.write('loading');
}
if(xmlhttp.readyState == 4 && xmlhttp.status == 200) {
alert('hello');
//alert('getting '+xmlhttp.status+' for '+href);
var pureHTML = xmlhttp.responseText;
var ajaxstart = pureHTML.indexOf('<!-- AJAX START -->');
var ajaxend = pureHTML.indexOf('<!-- AJAX END -->');
var ajaxContent = pureHTML.substring(ajaxstart, ajaxend);
var writeContent = document.getElementById('content');
writeContent.innerHTML = ajaxContent;
}
}
xmlhttp.send(null);
}
你是什麼意思的href不能正確到達? – Timbo
在底部,函數從var'href'中引用的文件獲取HTML代碼,但是如果我在alert中輸出它'href',則返回null .. – user980018
您有jQuery可用。有沒有**任何**理由你爲什麼不使用jQuery提供的AJAX函數?!如果你需要明文響應,你可以使用'dataType:'text''。 – ThiefMaster