2009-06-10 9 views
7

मेरे पास एक साधारण क्लिक और शो है, बटन क्लिक करें और छुपाएं, लेकिन जब मैं इसे क्लिक करता हूं, पृष्ठ पृष्ठ के शीर्ष पर पृष्ठ एंकर होते हैं। क्या इसे रोकने का कोई तरीका है? इसलिए जब मैं बटन पर क्लिक करता हूं, तो मैं ब्राउज़र में एक ही स्थान पर रहता हूं?jQuery क्लिक मुझे पृष्ठ के शीर्ष पर लाता है। लेकिन मैं रहना चाहता हूं कि मैं कहाँ हूं

मेरे कोड है ..

$('#reportThis').hide(); 

$('#flagThis').click(function() { 
    $('#reportThis').show("slow"); 
}); 
$('#submitFlag').click(function() { 
    $('#reportThis').hide("slow"); 
}); 

उत्तर

17

इस प्रयास करें:

$('#reportThis').hide(); 

$('#flagThis').click(function (evt) { 
     $('#reportThis').show("slow"); 
     evt.preventDefault(); 
}); 
$('#submitFlag').click(function (evt) { 
     $('#reportThis').hide("slow"); 
     evt.preventDefault(); 
}); 
+0

वाह धन्यवाद katrillion !! – Trip

4

आप शायद बाध्यकारी हैं यह एक < एक > टैग जो एक डिफ़ॉल्ट क्रिया है करने के लिए क्लिक करता है। इसे रोकने के लिए आप <div> की तरह एक और टैग का उपयोग कर सकते हैं या आप कर सकते हैं इस:

$('#reportThis').hide(); 

$('#flagThis').click(function() { 
     $('#reportThis').show("slow"); 
     return false; 
}); 
$('#submitFlag').click(function() { 
     $('#reportThis').hide("slow"); 
     return false; 
}); 
+0

वोट क्यों नीचे? गलत क्या है? रद्द करने के लिए –

+0

+1, कुछ भी गलत नहीं –

4

click समारोह में false लौटने का प्रयास करें लंगर, इस तरह:

<a href="#IDontExist" id="flagThis">Flag</a> 

या, अपने संचालकों false लौटने के लिए, इस तरह करते हैं:

$('#reportThis').hide(); 

$('#flagThis').click(function() { 
    $('#reportThis').show("slow"); 
    return false; 
}); 
$('#submitFlag').click(function() { 
    $('#reportThis').hide("slow"); 
    return false; 
}); 
+0

यह भी बहुत अच्छा काम करता है! धन्यवाद! – Trip

3

बदलें हाइपरलिंक किसी गैर-मौजूद करने के लिए बात करने के लिए:

$('#flagThis').click(function (event) { 
     $('#reportThis').show("slow"); 
     event.preventDefault(); 
}); 
0

यदि आप <button> तत्व का उपयोग कर रहे हैं तो प्रकार विशेषता सेट करना न भूलें।

<button type="button">My Button</button> 

कुछ ब्राउज़र सबमिट करने के लिए डिफ़ॉल्ट हैं जो आपको आपके पृष्ठ की शुरुआत में वापस लाएंगे।

यह वहीं है जहां मैं गलत हो रहा था और इसके बारे में यहां कुछ भी नहीं देखा, इसलिए मैंने सोचा कि मैं अपने दो सेंट भविष्य के पाठकों के लिए साझा करूंगा।

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