2009-06-10 31 views
7

Tôi có một nút nhấp và hiển thị, nhấp và ẩn đơn giản, nhưng khi tôi nhấp vào, trang neo ở đầu trang. Có cách nào để ngăn chặn điều này? Vì vậy, khi tôi nhấp vào nút, tôi ở cùng một vị trí trong trình duyệt?jQuery nhấp chuột đưa tôi đến đầu trang. Nhưng tôi muốn ở lại nơi tôi là

Mã của tôi là ..

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

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

Trả lời

17

Hãy thử điều này:

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

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

Wow cảm ơn katrillion !! – Trip

4

Bạn có thể được liên kết này nhấp chuột vào một < thẻ > trong đó có một hành động mặc định. Để tránh điều này, bạn có thể sử dụng một thẻ khác như <div> hoặc bạn có thể làm điều này:

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

Tại sao bỏ phiếu? Chuyện gì thế? –

+0

+1 để hủy, không có gì sai –

4

Hãy thử trở lại false trong click chức năng:

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

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

Điều này cũng rất tuyệt! Cảm ơn bạn! – Trip

3

Thay đổi các siêu liên kết để trỏ đến một không tồn tại neo, như thế này:

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

Hoặc, giúp người xử lý của bạn trả lại false, như sau:

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

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

Nếu bạn đang sử dụng phần tử <button>, đừng quên đặt thuộc tính type.

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

Một số trình duyệt mặc định gửi sẽ đưa bạn trở lại đầu trang của bạn.

Đó là nơi tôi đã đi sai và không thấy gì ở đây về nó vì vậy tôi nghĩ rằng tôi muốn chia sẻ hai xu của tôi cho độc giả trong tương lai.

Các vấn đề liên quan