JQuery:如何从href中提取锚点

时间:2012-12-12 08:24:38

标签: jquery

我对JQuery很陌生。

我想通过JQuery从href获取锚点的值。

如果我有以下示例,我怎样才能从jref获得href的值“5”?

<a href="user/showUsers#5">User 5</a>

提前致谢

-James

8 个答案:

答案 0 :(得分:2)

使用以下内容:

var id = $('a').attr('href').split('#');
id = id[id.length - 1];

答案 1 :(得分:1)

这些被称为“哈希”。说你的链接有一个id,你可以这样得到它:

document.getElementById("link").hash;

这仍然会给你“#”,但你可以轻松替换它:

document.getElementById("link").hash.replace("#","");
祝你好运!

答案 2 :(得分:1)

如果你想得到的数字是URL总是遵循相同的结构,试试这个,

$(document).ready(function() 
{
    var number = $("a").attr("href").match(/#([0-9]+)/)[1];
    alert(number);
});

答案 3 :(得分:0)

首先获得href,然后在第一个 #之后获得该部分:

var href = $("selector_for_the_link").attr('href'),
    index = href.indexOf('#'),
    anchor = href.substring(index + 1);

答案 4 :(得分:0)

这将为所有锚标签带来一些链接的href值

$('a[href*="#"]').each(function(){
       if(this.href.split('#').length>1 && this.href.split('#')[1] != ""){                                                
           console.log(this.href.split('#')[1]);
       }
});

答案 5 :(得分:0)

如果你打算在几个地方使用它,或者如果你只想要一个更干净的代码,我建议你看看这个URL parser

安装完成后,您只需使用它:

var anchor = $.url('http://yoursite.com/user/showUsers#5').attr('anchor');

答案 6 :(得分:-1)

 var id =  $(this).attr("href").split("#");
id = id[id.length - 1];

答案 7 :(得分:-1)

假设不再出现'#'。

<script type="text/javascript" language="javascript">
function GetAnchorValue(CurrCtrl)
{
    var hrefText = $(CurrCtrl).attr("href");
    var RequiredValue;
    if(hrefText.indexOf("#") != -1)
    {
        RequiredValue = hrefText.split("#")[1];
    }
}
</script>

html标签将是

<a href="user/showUsers#5" onclick="return GetAnchorValue(this);">Test Anchor</a>