使用JavaScript更新锚点

时间:2012-01-26 16:07:43

标签: javascript jquery dom

我有一张桌子。该表包含th个元素,其中包含锚点。这就是一个例子:

<th scope="col">
<a href="/Admin/Auction/Closed?sort=InventoryReference&sordir=ASC&sortdir=DESC">Inventory reference</a>
</th>

我想要做的是更新锚点,以便它有一个额外的查询字符串参数:

<th scope="col">
<a href="/Admin/Auction/Closed?sort=InventoryReference&sordir=ASC&sortdir=DESC&page=3">Inventory reference</a>
</th>

现在,我现在必须这样做:

<script language="javascript" type="text/javascript">

    $(document).ready(function () {
       $('th[scope^=col]') ???
    })

</script>

问题是,我不知道应该替换什么???有谁有想法吗?我想我需要一些抓取锚点的JavaScript或JQuery代码,然后附加额外的查询字符串参数。问题究竟应该是什么代码?

谢谢,

萨钦

3 个答案:

答案 0 :(得分:3)

试试这个

$(document).ready(function () {
   $('th[scope=col] a')[0].href += "&page=3";
});

如果您认为该网址在查询字符串中已经包含page参数,您只需更新其值即可使用此代码。

$(document).ready(function () {
   $a[0].href = $a[0].href.replace(/([?&])page=[^&]*&?/,'$1') + '&page=3';
});

答案 1 :(得分:3)

试试这个:

$(document).ready(function(){

   $('th[scope^=col]').each(function(){

      var old_link = "";
      var new_link = "";
      //Get the current href value of the child anchor tag of 'th[scope^=col]'
      old_link = $(this).children('a').attr('href');
      //Append the extra string required '(in this case &page=3)' to the old_link
      new_link = old_link + '&page=3';
      //Set the href value for the anchor tag within 'th[scope^=col]'
      $(this).children('a').attr('href',new_link);

   });

});

希望这有帮助。

答案 2 :(得分:1)

$(document).ready(function () {
   $('th[scope=col] a').each(function(){
        $this = $(this);
        $this.attr('href', $this.attr('href') + '&page=3');
   });
});