使用Ajax更新href ID

时间:2015-01-26 20:15:48

标签: javascript php jquery html ajax

在一个页面上,我有一个小型音频播放器播放的歌曲,歌曲每1-2分钟或我想要的时候(如收音机)改变。 用户可以通过这种方式投票:

<span class='up'><a href="" class="vote" id="<?php echo $mes_id; ?>" name="up"><img src="up.png" alt="Down" /></a></span><br />

对于upvote按钮,<div class="totalvotes"></div>表示总票数和

<span class='down'><a href="" class="vote" id="<?php echo $mes_id; ?>" name="down"><img src="down.png" alt="Down" /></a></span>

用于downvote按钮。

一切都运作良好但是当我点击其中一个按钮进行投票时,页面显然会刷新。 来自id="<?php echo $mes_id; ?>"元素的a是我需要每1-2秒更新一次,因为它获得了当前歌曲播放的ID。

对于解决方案使用的总票数:

function refresh_div() {
        jQuery.ajax({
            url:'totalvotes.php',
            type:'POST',
            success:function(totalvotes) {
                jQuery(".totalvotes").html(totalvotes);
            }

        });

    }



    t = setInterval(refresh_div,1000);

这很容易因为我用类创建了一个div并在函数中指定了类。但我不知道如何指定&#34; a&#34;的ID?每秒更新一次。

3 个答案:

答案 0 :(得分:1)

您可以使用jQuery&#39; .attr()更改HTML元素的任何属性。

function updateLink() {
    // get id of current song.
    // newValue is that id. 
    $("a").attr('id',newValue);

}

setInterval(updateLink,1000);

答案 1 :(得分:0)

我宁愿将该链接放在div中,并使用ajax

使用新链接更新该div

答案 2 :(得分:0)

使用Ajax获取播放歌曲的ID 只需使用

在页面加载中全局获取对anchor元素的引用
var anchor = $("#<?php echo $mes_id; ?>");

并设置

$(anchor).attr("id", idReturnedFromAjaxCall);
$(anchor).attr("href", theUrlIBuilded);