2010-12-03 87 views

回答

361

要獲取或設置HTML元素的屬性,可以在jQuery中使用element.attr()函數。

要獲得HREF屬性,使用下面的代碼:

var a_href = $('selector').attr('href'); 

要設置HREF屬性,使用下面的代碼:

$('selector').attr('href','http://example.com'); 

在這兩種情況下,請使用適當的選擇器。如果您已爲錨點元素設置類,請使用'.class-name',如果您已爲錨點元素設置了標識,請使用'#element-id'

+1

我用這個來獲得href。 alert($(「#publish-link」)。attr(「href」)); 它讓我警覺「未定義」。 – gautamlakum 2010-12-03 12:27:04

+3

這可能意味着你的發佈鏈接是一個類而不是一個id。嘗試:alert($(「。publish-link」)。attr(「href」));而不是 – 2010-12-03 12:30:23

+3

@ lakum4stackof:它會幫助,如果你張貼在這裏使用確切的< a >標記:) – 2010-12-03 12:31:47

14

設置href屬性與

$(selector).attr('href', 'url_goes_here'); 

和閱讀使用

$(selector).attr('href'); 

其中 「選擇」 是任何有效的jQuery選擇您<a>元素( 「.myClass」 或 「#myId」命名最簡單的)。

希望這會有所幫助!

13

在jQuery的1.6或更高版本,最好使用:

$(selector).prop('href',"http://www...")設置值,

$(selector).prop('href')得到

總之,.prop獲取和設置值DOM對象和.attr獲取並設置值爲HTML。這使得.prop更快一些,在某些情況下可能更可靠。

1
<style> 
a:hover { 
    cursor:pointer; 
} 
</style> 

<script type="text/javascript" src="lib/jquery.js"></script> 
<script type="text/javascript"> 
$(document).ready(function() { 
    $(".link").click(function(){ 
     var href = $(this).attr("href").split("#"); 
     $(".results").text(href[1]); 
    }) 
}) 
</script> 



<a class="link" href="#one">one</a><br /> 
<a class="link" href="#two">two</a><br /> 
<a class="link" href="#three">three</a><br /> 
<a class="link" href="#four">four</a><br /> 
<a class="link" href="#five">five</a> 


<br /><br /> 
<div class="results"></div>