2014-09-04 77 views
1

我是jQuery新,我试图获得href属性的值,当用户点击一个链接,但我得到的href属性相同的值。 这里是我的html代码得到同样的值为href属性

<div class="container"> 
    <ul> 
     <li><a href="#1" >Sign In</a> 
     </li> 
     <li><a href="#2">Brand</a> 
     </li> 
     <li><a href="#3">Distributor Brand</a> 
     </li> 
     <li class="language"> <a href="#4">English</a> 

      <ul id="language-select"> 
       <li><a href="#5">Spanish</a> 
       </li> 
       <li><a href="#6">French</a> 
       </li> 
       <li><a href="#">German</a> 
       </li> 
      </ul> 
     </li> 
    </ul> 
</div> 

和js

$(document).ready(function(){  
    $("a").click(function(){    
     var value=$(".container").find("a").attr("href");    
     alert("hello------> "+value); 
    }); 
}); 

这里的小提琴http://jsfiddle.net/suraj0750/rmbvo9oh/1/

+4

需要'VAR值= $(本).attr( “HREF”);' – 2014-09-04 10:50:25

+0

为什么向下票?我是一个初学者 – 2014-09-04 10:54:58

+0

向下投票使得不知情 – Alex 2014-09-04 10:55:15

回答

7

试试这个: -

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

Demo

+1

+1是的 - 这是去的方式,使用'this'关键字引用被点击的实际'a'标签。 – 2014-09-04 10:50:51

+1

Mohit已经实现了最简单和最好的答案 – BNN 2014-09-04 11:00:23

3

在JavaScript中,将事件绑定到元素时,this变量可用(当然取决于元素和事件)。因此,当您单击一个元素并绑定一个函数时,在该函数范围内,单击的元素被引用为this。写$(this)你犯了一个jQuery对象了它:

$(document).ready(function(){ 

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

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

    alert("hello------> " + value); 
    }); 


});