2011-02-09 16 views
25

मैंबटन पर क्लिक लिंक करने के लिए जाना - jQuery

$('.button1').click(function() { 
    document.location.href=$(this).attr('id'); 
}); 

Button1 चर अद्वितीय आईडी है नीचे के रूप में एक स्क्रिप्ट है। क्लिक पर, पृष्ठ को यूआरएल "www.example.com/index.php?id=buttonid" पर रीडायरेक्ट करना होगा, लेकिन अब पृष्ठ केवल "button id" पर रीडायरेक्ट कर रहा है।

मैं वर्तमान यूआरएल से पहले "www.example.com/index.php?id=" स्ट्रिंग जोड़ना चाहता हूं। मैं इसे कैसे संभव बना सकता हूं?

उत्तर

55
: डोमेन निर्दिष्ट करने के लिए

window.location का उपयोग कर सबसे पहले document.location मान के अनुसार बेहतर है और केवल पुराने/अलग-अलग ब्राउज़रों में सिरदर्द हो सकता है। नोटों की जाँच करें @MDC DOM document.location page

और दूसरा के लिए - attr jQuery पद्धति का उपयोग करके आईडी प्राप्त करने के लिए एक बुरी बात है - आप this करने के लिए सौंपा मूल्य के रूप में प्रत्यक्ष देशी डोम एक्सेसर this.id का उपयोग करना चाहिए सामान्य डोम तत्व है।

+0

आपको बहुत बहुत धन्यवाद ... :) –

+0

+1 विंडो.लोकेशन और इस.आईडी का सुझाव देने वाले पहले व्यक्ति होने के लिए +1, मैं उनके बिना तुरंत उनके उत्तर के साथ गया;) – Sarfraz

+0

@ सर्फ्राज़ चीयर्स ! –

2

क्यों न सिर्फ

document.location.href="www.example.com/index.php?id=" + $(this).attr('id'); 
+0

धन्यवाद ... यह काम करता है .. :) –

+0

@blasteralfred कुछ अधिक सुझावों और अच्छी प्रथाओं –

0

को दूसरी पंक्ति को बदलने आप window.location.href के साथ वर्तमान यूआरएल प्राप्त कर सकते हैं लेकिन मुझे लगता है कि आप क्वेरी स्ट्रिंग हेरफेर करने के लिए jQuery क्वेरी प्लगइन की आवश्यकता होगी: http://plugins.jquery.com/project/query-object

4

आप की जरूरत है

$('.button1').click(function() { 
    window.location = 'www.example.com/index.php?id=' + this.id; 
}); 
+0

धन्यवाद ... यह काम करता है के लिए मेरा उत्तर की जाँच करें .. :) –

+0

@blasteralfred: आपका स्वागत है :) – Sarfraz

+0

href अनावश्यक है और देखने के लिए मेरे उत्तर पर उन चीजों पर अधिक जानकारी देखने के लिए जो बेहतर किया जा सकता था –

5
$('.button1').click(function() { 
    document.location.href='/index.php?id=' + $(this).attr('id'); 
}); 
संबंधित मुद्दे