Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/465.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Can';无法让AJAX脚本正常工作_Javascript_Html_Ajax - Fatal编程技术网

Javascript Can';无法让AJAX脚本正常工作

Javascript Can';无法让AJAX脚本正常工作,javascript,html,ajax,Javascript,Html,Ajax,我有一个表,其中有一个事务列表,我正在尝试以设置的间隔更新表内容。我正在linux red hat服务器上运行此页面。只是AJAX现在不起作用 <!doctype html> <html> <head> <script> function updateTrans() { var xmlhttp; if (window.XMLHttpR

我有一个表,其中有一个事务列表,我正在尝试以设置的间隔更新表内容。我正在linux red hat服务器上运行此页面。只是AJAX现在不起作用

<!doctype html>
<html>

    <head>
        <script>
            function updateTrans() {
                var xmlhttp;

                if (window.XMLHttpRequest) {
                    xmlhttp = new XMLHttpRequest();
                } else {
                    xmlhttp = new ActiveXObject("Microsoft.HTTP");
                }

                xmlhttp.onreadystatechange = function () {

                    if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
                        document.getElementById("transactions").innerHTML = xmlhttp.responseText;
                    }

                }

                xmlhttp.open("GET", "update_trans.txt", true);
                xmlhttp.send();
            }

            window.setInterval(updateTrans(), 4000);
        </script>
        <link href="trans_styles.css" rel="stylesheet" type="text/css">
    </head>

    <body>
         <h1 id="heading"> Chomp The Bit </h1>

        <div id="transactions">
            <table id="trans_tbl" border="0">
                <tr>
                    <th colspan="2">Latest Transactions</th>
                </tr>
                <tr>
                    <td>aaaaaaaaaaaaaaaaaaaaaaaaaaaaa</td>
                    <td>aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa</td>
                </tr>
                <tr>
                    <td>bbbbbbbbbbbbbbbbbbbbbbbbbbbbb</td>
                    <td>bbbbbbbbbbbbbbbbbbbbbbbbbbbbbb</td>
                </tr>
                <tr>
                    <td>ccccccccccccccccccccccccccccc</td>
                    <td>cccccccccccccccccccccccccccccc</td>
                </tr>
                <tr>
                    <td>ddddddddddddddddddddddddddddd</td>
                    <td>dddddddddddddddddddddddddddddd</td>
                </tr>
                <tr>
                    <td>eeeeeeeeeeeeeeeeeeeeeeeeeeeee</td>
                    <td>eeeeeeeeeeeeeeeeeeeeeeeeeeeeeee</td>
                </tr>
                <tr>
                    <td>fffffffffffffffffffffffffffff</td>
                    <td>ffffffffffffffffffffffffffffffff</td>
                </tr>
                <tr>
                    <td>ggggggggggggggggggggggggggggg</td>
                    <td>gggggggggggggggggggggggggggggggg</td>
                </tr>
                <tr>
                    <td>hhhhhhhhhhhhhhhhhhhhhhhhhhhhh</td>
                    <td>hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh</td>
                </tr>
                <tr>
                    <td>iiiiiiiiiiiiiiiiiiiiiiiiiiiiii</td>
                    <td>iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii</td>
                </tr>
                <tr>
                    <td>jjjjjjjjjjjjjjjjjjjjjjjjjjjjjj</td>
                    <td>jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj</td>
                </tr>
            </table>
        </div>
    </body>

</html>

函数updaterans(){
var-xmlhttp;
if(window.XMLHttpRequest){
xmlhttp=新的XMLHttpRequest();
}否则{
xmlhttp=新的ActiveXObject(“Microsoft.HTTP”);
}
xmlhttp.onreadystatechange=函数(){
if(xmlhttp.readyState==4&&xmlhttp.status==200){
document.getElementById(“事务”).innerHTML=xmlhttp.responseText;
}
}
open(“GET”,“update_trans.txt”,true);
xmlhttp.send();
}
setInterval(updateTrans(),4000);
咬一口
最新交易
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
中交
dddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd
dddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd
噫噫噫噫噫噫
噫噫噫噫噫噫
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
gggggggggggggggggggggggggggggggggggg
gggggggggggggggggggggggggggggggggggggg
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII
IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII
JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ
JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ

确保同一目录中有,
update\u trans.txt
文件,并且该文件不为空

        <head>
            <script>
                function updateTrans() {
                    var xmlhttp;

                    if (window.XMLHttpRequest) {
                        xmlhttp = new XMLHttpRequest();
                    } else {
                        xmlhttp = new ActiveXObject("Microsoft.HTTP");
                    }

                    xmlhttp.onreadystatechange = function () {

                        if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
                            document.getElementById("transactions").innerHTML = xmlhttp.responseText;
                        }

                    }

                    xmlhttp.open("GET", "update_trans.txt", true);
                    xmlhttp.send();
                }

                window.setInterval(updateTrans(), 4000);
            </script>
            <link href="trans_styles.css" rel="stylesheet" type="text/css">
        </head>

        <body>
             <h1 id="heading"> Chomp The Bit </h1>

            <div id="transactions">

             </div>
        </body>

    </html>

函数updaterans(){
var-xmlhttp;
if(window.XMLHttpRequest){
xmlhttp=新的XMLHttpRequest();
}否则{
xmlhttp=新的ActiveXObject(“Microsoft.HTTP”);
}
xmlhttp.onreadystatechange=函数(){
if(xmlhttp.readyState==4&&xmlhttp.status==200){
document.getElementById(“事务”).innerHTML=xmlhttp.responseText;
}
}
open(“GET”,“update_trans.txt”,true);
xmlhttp.send();
}
setInterval(updateTrans(),4000);
咬一口

我不确定这是否能解决问题,但您应该执行
window.setInterval(updateTrans,4000)
而不是
window.setInterval(updateTrans(),4000)
。也就是说,您应该将对函数的引用作为
setInterval
的第一个参数传递,而不是调用函数的返回值,这正是您在当前代码中所做的。在您当前的代码中,
updateTrans
将被调用一次——当您自己调用它时——但不会像您所希望的那样每4000毫秒调用一次


我还建议您使用
setTimeout
而不是
setInterval
——我写道。

您如何判断有什么问题?你有什么错误吗?它不会改变任何内容。。当我简化ajax并去掉一些东西时,javascript将工作并获得div部分,但它不会用文本文件的内容替换它,我可以。。。但是我不知道任何jquery。。此外,这些事务不会来自数据库。。它将来自比特币网络。我确实知道一些php和mysql,如果它们可以工作的话。首先,使用客户端框架,比如jQuery,而不是处理XmlHttpRequest对象的创建。像JQuery这样的框架为您提供了开箱即用的功能,并为您处理所有跨浏览器的细微差别。其次,不要使用setInterval,而是使用setTimeout,其中回调函数是轮询函数