从php echo更新网页中的元素

时间:2013-05-03 10:04:28

标签: javascript jquery ajax dom

我正在构建一个系统,如果需要将自动更新自己,大多数应用程序运行正常,但有一个部分,我无法工作,这是当我想更新元素,现在我知道返回我工作,因为我已经使用console.log输出它,它工作正常。

这是我的JS(原始尝试):

$(document).ready(function(){//Starts the applications (INIT)
        $('.trade_window').load('signals.php?action=init', setInterval(function(){
            console.log("TEST!!!");
            $('.market_number_1').load('signals.php?action=check', function(){
                console.log("TEST2");
                // console.log(result);
            });
        }, 1000));  
    });

第二次尝试:

$(document).ready(function(){//Starts the applications (INIT)
        $('.trade_window').load('signals.php?action=init', setInterval(function(){
            $.ajax({
                url: 'signals.php?action=check&param=' + JSON.stringify({
                    'market_number'     : $('.trade_window .market_name_1').text().trim(),
                    'market_name'       : $('.trade_window .market_name_1').text().trim(),
                    'trade_type'        : $('.trade_window .status').text().trim(),
                    'trade_start_price' : '1.1234',
                    'trade_open_time'   : '18:21:02'
                                                        }),


                type: 'GET',
                success: function(result){
                    console.log("Return was: " + result);
                    $('.trade_window .market_number_1').load(result);
                }
            })
        }, 1000));  
    });

我已将我的php代码设置为此用于测试:

<?php elseif (!empty($_GET) && !empty($_GET['action']) && $_GET['action'] == "check") : ?>
<?php echo "check is working"; ?>
<?php endif; ?>

你可能会认为我还不是JavaScript大师,但在学习过程中你的帮助会很棒。

注意我的php文件会输出一些HTML和数据,如果你需要看到这个,请告诉我。

1 个答案:

答案 0 :(得分:1)

我认为你需要在load ...

的回调函数中调用setInterval
$('.trade_window').load('signals.php?action=init',function(){
        console.log("TEST!!!");
        setInterval(function(){
          $('.market_number_1').load('signals.php?action=check', function(){
             console.log("TEST2");
            // console.log(result);
          });
       }, 1000);
  });