我想在“div”内显示 txt 文件的内容,因此我使用按钮调用我的函数,但即使我不按按钮,函数也会触发,这是我的 HTML 代码:
<body>
<form>
<input id="showF" type="button" value= "Show File" />
</form>
<div id="contaniner" style="background-color:#99FF66;">
<p>It will show the txt content</p>
</div>
</body>
还有我的js代码:
window.onload=function(){
document.getElementById("showF").addEventListener("click",sacardatos('P1.txt','container'),false);
}
function sacardatos(data, idDiv){
var XMLHttpRequestObject = false;
if (window.XMLHttpRequest) {
XMLHttpRequestObject = new XMLHttpRequest();
} else if (window.ActiveXObject) {
XMLHttpRequestObject = new ActiveXObject("Microsoft.XMLHTTP");
}
if(XMLHttpRequestObject) {
var objeto = document.getElementById(idDiv);
XMLHttpRequestObject.open("GET", data);
XMLHttpRequestObject.onreadystatechange = function(){
if (XMLHttpRequestObject.readyState == 4 && XMLHttpRequestObject.status == 200) {
objeto.innerHTML = XMLHttpRequestObject.responseText;
}
}
XMLHttpRequestObject.send(null);
}
}
第二个参数addEventListener
应该是一个函数。您不是传递函数,而是立即调用该函数并传递结果。改成:
document.getElementById("showF").addEventListener("click", function() {
sacardatos('P1.txt','container');
}, false);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)