Jquery:动态锚

时间:2011-08-03 19:27:24

标签: jquery dynamic anchor

我目前有一个利用PHP,JQuery和Ajax混合的页面。该页面显示一个项目表,每个项目(行)旁边都有相应的锚点,以查看详细信息,编辑或删除该特定项目。

当页面最初加载时,它通过Jquery / Ajax进行调用以填充表格,并将项目ID附加到每个项目锚点的URL(ex :<a id="myanchorid" href="viewdetails.php?id=5">)而不是将用户带到新的页面,我希望能够使用Jquery的对话功能在对话弹出窗口中打开页面。

我遇到的问题是,为了正确调用我的Jquery函数,我显然需要每个锚一个唯一的ID,但是因为我不知道页面加载时会有多少项,并且每个项目的ID可以是任何数字我都难以理解如何创建带有ID的锚标签,我可以将它传递给我的对话功能。

谢谢!

我目前正在使用以下功能:

$(document).ready(function(){
 function yourfunction(event) {
           alert($('#myanchorid').attr('href')); 
          //$("#dialog").load(/getEventNameById/').dialog(); //will add item ID here
         return false;
    }


$('#myanchorid').live('click',yourfunction); //need myanchorid to dynamically be passed...myanchorid1, myanchorid2...

});

2 个答案:

答案 0 :(得分:1)

您可以使用HTML5 data属性:

<a href="viewdetails.php?id=5" data-id="5" class="view_more">Click to view</a>

然后:

$('.view_more').click(function()
{
    id = $(this).data('id') // should yield 5
});

答案 1 :(得分:0)

为什么不向所有元素添加类,如

<a href="" id="" class="ajax">...</a>

$('.ajax').live('click',yourfunction);