jQuery获取锚值

时间:2011-05-16 21:47:02

标签: javascript jquery dom

我正在尝试获取单击锚点的值,但我不确定单击哪个锚点或如何使用jquery锁定它。我有一个document.ready功能

$(document).ready(function () {
var ActiveBlogStats = $('#BlogSelectList');
$('#BlogSelectList').click(function () {
    alert(ActiveBlogStats.text)
}); })

这是正在处理的ID

<ul class="submenu" id="BlogSelectList">
  <xsl:for-each select="oohru/user/oohblog">
    <li>
      <a>
        <xsl:attribute name="href">#<xsl:value-of select="normalize-space(blogid)"/></xsl:attribute>
        <xsl:value-of select="oohblogurl"/>
      </a>
    </li>
  </xsl:for-each>
<li><a href="AddNewBlog.aspx">+ Create a new oohblog</a></li>
</ul>

如何获取点击实际锚点的href?我没有看到如何制作文档。甚至在文档准备好之后,甚至对于不存在的项目。 我想我可以从URL中获取#值,因为当他们点击它时会更新URL,但我宁愿直接从点击中获取它。

3 个答案:

答案 0 :(得分:1)

$("#BlogSelectList a").click(function(){

var href = $(this).attr("href");



});

答案 1 :(得分:1)

如果您的内容是动态生成的,您可能需要查看.live()(或委托())(http://api.jquery.com/live/ | http://api.jquery.com/delegate/

您的代码将类似于:

    $("#BlogSelectList li a").live('click', function () {
        //do something
    });

答案 2 :(得分:0)

你可以用这样的东西得到href:

$("#BlogSelectList").delegate("a", "click", function() {

    var href = $(this).attr("href");
    alert(href);

});

如果你需要阻止它重定向,你可以这样做:

$("#BlogSelectList").delegate("a", "click", function(e) {

    e.preventDefault();

    var href = $(this).attr("href");
    alert(href);

});