2011-06-27 23 views
16

Mam wiersz tabeli ze zdarzeniem ONCLICK (przełącza dodatkowe dane poniżej). Wewnątrz jednej z komórek rządowych mam przycisk (po kliknięciu wykonuje akcję AJAX). Po kliknięciu przycisku uruchamiane jest także zdarzenie onclick w wierszu, a co się dzieje, dodatkowe dane pojawiają się przed zakończeniem wywołania AJAX (co jest dla mnie złym zachowaniem). Jakieś pomysły, jak mogę to elegancko rozwiązać? (bez identyfikowania i kodowania go w kodzie onclick wiersza) DziękiZapobieganie zdarzeniu wstawiania wiersza tabeli po kliknięciu przycisku wewnątrz wiersza

Odpowiedz

26

Dodaj event.stopPropagation(); do przycisków click obsługi. Aby uzyskać więcej informacji, spójrz na: here i here.

+2

Skierował mnie do dokładnego rozwiązania. Dzięki!! – Guy

+0

bezpośredni link dla leniwych! - działał jak zawieszka, aby wyłączyć obsługę zdarzeń z wierszy tabeli, ale nadal pozwala na kliknięcie łącza w danych tabeli !! - https://developer.mozilla.org/en-US/docs/Web/API/Document_Object_Model/Examples#Example_5:_Event_Propagation –

0

Jeśli lubisz javascript rozwiązanie, w wielu przypadkach rozwiązanie CSS jest to możliwe, a także:

style="pointer-events: none;" 

To będzie wyciszyć onclick zdarzenie <tr>.

Jednak w niektórych przypadkach nadal miałem problemy, które wydawały się nie działać. W większości przypadków używam tylko powyższego stylu.

Powiązane problemy