仅刷新div的内容

时间:2012-01-28 00:26:50

标签: ajax refresh

我在我的网站上有一个公共SHOUTcast,我已经设置了一个小部件,以便成员可以看到当前正在播放的曲目,节目名称等信息。我想要的是一种刷新部分的方法小部件所在的页面,而不是整个页面。 (我会使用iframe,但因为我们使用成员选择的皮肤,iframe中的CSS与页面的其余部分不匹配。)

我该怎么做呢? AJAX可能吗?

我对AJAX的了解非常生疏,所以如果你能够如此善良地指导我,那就非常感激了。

小部件代码:

<div class='ipsBox table_wrap'>

    <table class='ipb_table' cellspacing='1'>

        <tbody>

            <tr>

                <td class='row2'>Status:</td>
                <td class='row2'><font color='#33ff00'>Online</font></td>

            </tr>

            <tr>

                <td class='row2'>Show:</td>
                <td class='row2'>$servertitle</td>

            </tr>

            <tr>

                <td class='row2'>Listeners:</td>
                <td class='row2'>$currentlisteners / $maxlisteners</td>

            </tr>

            <tr>

                <td class='row2'>Now Playing:</td>
                <td class='row2'><marquee width='200'scrolldelay='1' scrollamount='4'>$song[0]</marquee></td>

            </tr>

            <tr>

                <td class='row2'>Tune In:</font></td>

                <td class='row2'>       

                    <a href='http://xxx.xxx.xx.xx:xxxx/listen.pls'><img src='public/shoutcast/icons/winamp.png'/></a>
                    <a href='http://xxx.xxx.xx.xx:xxxx/listen.pls'><img src='public/shoutcast/icons/foobar.png'/></a>
                    <a href='http://xxx.xxx.xx.xx:xxxx/playlist.asx'><img src='public/shoutcast/icons/wmp.png'/></a>
                    <a href='http://xxx.xxx.xx.xx:xxxx/listen.pls'><img src='public/shoutcast/icons/itunes.png'/></a>
                    <a href='http://xxx.xxx.xx.xx:xxxx/listen.pls'><img src='public/shoutcast/icons/vlc.png'/></a>
                    <a href='http://xxx.xxx.xx.xx:xxxx/listen.pls'><img src='public/shoutcast/icons/mm.png'/></a>

                </td>

            </tr>

        </tbody>

    </table>

3 个答案:

答案 0 :(得分:1)

我设法使用以下脚本:

 $(document).ready(function() {
     $("#refresh").load("radiostatus.php");
   var refreshId = setInterval(function() {
      $("#refresh").load('radiostatus.php?randval='+ Math.random());
   }, 10000);
   $.ajaxSetup({ cache: false });
});




<div id='refresh'>

    <?php include('radiostatus.php'); ?>

</div>

答案 1 :(得分:0)

  1. 发送AJAX请求。
  2. 收到回复。
  3. 准备要替换<div>的html。
  4. 使用element.innerHTML替换<div>内容。

答案 2 :(得分:0)

这样的事情应该可以解决问题。 (未经测试..)还需要jQuery ......

$.get(window.location.href, function(data) {
    $("ipsBox table_wrap").html( $("ipsBox table_wrap", $(data)).html() );
});