Ajax。无法弄清楚

时间:2014-08-08 09:32:09

标签: javascript ajax get

我刚学完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>

谢谢, 弗罗斯特先生

1 个答案:

答案 0 :(得分:1)

要从文本输入中读取值,请使用value属性,而不是innerHTML属性。

输入元素被定义为EMPTY,它不能有任何子节点,所以innerHTML应该总是一个空字符串。