2011-04-01 16 views
72

क्या कोई जानता है कि मैं क्लिक किए गए लिंक के href को jquery के साथ कैसे प्राप्त कर सकता हूं? मेरे पास निम्नानुसार लिंक है:क्लिक किए गए लिंक के href को jquery के साथ कैसे प्राप्त करें?

<a href="ID=1" class="testClick">Test1.</a> 
    <br /> 
    <a href="ID=2" class="testClick">Test2.</a> 
    <br /> 
    <a href="ID=3" class="testClick">Test3.</a> 

मैंने लिंक पर दिए गए लिंक से href मान प्राप्त करने के लिए निम्न कोड लिखा है। लेकिन किसी भी तरह यह हमेशा मुझे पहला लिंक का href (आईडी = 1) देता है भले ही मैंने टेस्ट 2 या टेस्ट 3 पर क्लिक किया हो। क्या किसी को पता है कि यह यहाँ क्या चल रहा है? और मैं इस मुद्दे को कैसे हल कर सकता हूं?

$(".testClick").click(function() { 
     var value = $(".testClick").attr("href"); 
     alert(value); 
    }); 

उत्तर

133

अपने कॉलबैक समारोह में इस देख रहे हैं क्लिक किया जाने वाला तत्व को दर्शाता है।

$(".addressClick").click(function() { 
     var addressValue = $(this).attr("href"); 
     alert(addressValue); 
    }); 
+16

या एक बस उसे सीधे उपयोग कर सकते हैं एक jQuery वस्तु बनाने के बजाय। 'var addressValue = this.href;' – Chris

+0

FYI, अगर href सापेक्ष 'href =" sibling_file.htm "' फिर $ (यह) .attr ("href") 'sibling_file.htm' देता है और यह.href रिटर्न ' https: // example.com/फ़ोल्डर/sibling_file.htm' (जो मैं चाहता था और चाहता था।) – Redzarf

8
$(".testClick").click(function() { 
     var value = $(this).attr("href"); 
     alert(value);  
}); 

जब आप $ ("। ClassName") आप सभी तत्वों को उस वर्ग है कि सेट हो रही है का उपयोग करें। फिर जब आप एटीआर को कॉल करते हैं तो यह संग्रह में पहले आइटम का मूल्य देता है।

0

मान लीजिए हम जैसे तीन लंगर टैग नहीं है,

<a href="ID=1" class="testClick">Test1.</a> 
<br /> 
<a href="ID=2" class="testClick">Test2.</a> 
<br /> 
<a href="ID=3" class="testClick">Test3.</a> 
अब लिपि में

$(".testClick").click(function() { 
     var anchorValue= $(this).attr("href"); 
     alert(anchorValue); 
}); 

उपयोग className के बजाय इस कीवर्ड (testClick)

संबंधित मुद्दे