我的html代码中有这些元素:
<ul class='tabs'>
<li data-file='home'><a>Home</a></li>
<li data-file='contact'><a>Contact</a></li>
..
..
</ul>
我有一个
<div>
叫做content:<div class='content'>
//Homepage Content
</div>
然后,我使用Javascript使用
<li>
获取单击的data-file
的内容,然后为其添加.html,这样它就变成了这个contact.html。var xmlhttp = new XMLHttpRequest();
xmlhttp.onreadystatechange = function() {
if (xmlhttp.readyState == XMLHttpRequest.DONE) { // XMLHttpRequest.DONE == 4
if (xmlhttp.status == 200) {
document.getElementById('content').innerHTML = xmlhttp.responseText;
}
else if (xmlhttp.status == 400) {
alert('There was an error 400');
}
else {
alert('something else other than 200 was returned');
}
}
};
xmlhttp.open("GET", file, true); // file is the variable 'contact.html'
xmlhttp.send();
但是我得到一个错误:
Uncaught TypeError: Cannot set property 'innerHTML' of null
at XMLHttpRequest.xmlhttp.onreadystatechange
最佳答案
更改HTML以使其具有具有指定ID的元素
<div id='content'>
//Homepage Content
</div>