body onload不会触发javascript jquery

时间:2014-11-02 08:52:43

标签: javascript php jquery html

我试图在加载html页面时触发一个函数。为了达到这个目的,我正在使用body onload。在我看来,该功能没有被触发。我已经在页面的头部包含了jQuery库,并检查它们确实位于它们应该的位置。该脚本正在调用一个php文件,该文件每秒检查一次数据库中的vaule。它应该返回到html页面的状态(响应)。

这是html onload代码:

<body onload="setInterval(check_search_status, 1000)" >  

在我页面的最底部,就在正文Close标签之前,我将函数本身定义为javasscript。正如您所看到的,我正在尝试使用会话变量将id参数传递给checksearchstatus.php页面。

<script type="text/javascript">
        function check_search_status(){
            $jQuery.ajax({
                type: 'POST',
                url: 'http://internetsolutions.no/checksearchstatus.php',
                data: {
                    id: '{$_SESSION['owner']}';
                },
                dataType: 'json',
                success: function(response){
                    if(response.status == 0){
                        window.location='http://internetsolutions.no/findings.php';
                    }
                }
            });
        }
    </script>

3 个答案:

答案 0 :(得分:0)

更改行

$jQuery.ajax({

$.ajax({

答案 1 :(得分:0)

请改为使用$(document).ready()中的函数。您的代码包含语法错误。将$jQuery.ajax更改为$.ajax,将id: '{$_SESSION['owner']}';更改为id: '<?=$_SESSION["owner"]?>'

$(document).ready(function(){
    check_search_status();
});
function check_search_status(){
    $.ajax({
        type: 'POST',
        url: 'http://internetsolutions.no/checksearchstatus.php',
        data: {
            id: '<?=$_SESSION["owner"]?>'
        },
        dataType: 'json',
        success: function(response){
            if(response.status == 0){
                window.location='http://internetsolutions.no/findings.php';
            }
        }
    });
}

答案 2 :(得分:0)

除了其他人指出的问题外,我在这里看到了一些问题。

  1. 您正在混合使用JS和PHP。示例:id: '{$_SESSION['owner']}';。这是无法完成的,因为PHP运行服务器端,而JS运行客户端(在浏览器中)。你

  2. 我认为您的onload事件应该写成:setInterval(function() {check_search_status();}, 1000);