我刚学完Ajax,所以我尝试制作一个简单的项目(一个简单的端口扫描程序),它不适合我。 我不知道是什么问题。它只是显示扫描开始'。 请帮我。 php文件中没有问题,只有在此代码(VVVV)
中var ports = [80, 22, 443, 21, 8080, 25, 3306];
function loadData(url, port){
var xmlhttp;
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp = new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
document.getElementById("myDiv").innerHTML += "<br>" + xmlhttp.responseText;
}
}
xmlhttp.open("GET","scan.php?url=" + url + "&port=" + port,true);
xmlhttp.send();
}
function scan () {
// body...
document.getElementById("myDiv").innerHTML = "Scan Started";
if(document.getElementById("url").innerHTML){
var url = document.getElementById("url").innerHTML;
for (var i = 0; i < ports.length; i++) {
loadData(url, ports[i]);
};
}
}
</script>
<center>
<input type="text" id="url" name="url"><br><button onclick="scan()">Scan</button>
<br>
<div id="myDiv"></div>
谢谢, 弗罗斯特先生
答案 0 :(得分:1)
要从文本输入中读取值,请使用value
属性,而不是innerHTML
属性。
输入元素被定义为EMPTY,它不能有任何子节点,所以innerHTML
应该总是一个空字符串。