Ajax - samoistne ukrywanie elementu

Witam.

Mam problem z wyświetlaniem… otóż mam ukryty wiersz tabeli:

przycisk:

funkcja:

function mojaFunkcja()

{

$('#schowany').toggle();

$('#odp').html('');


    	$.ajax({

		     type: "POST",

		     url: "skrypt.php",

		     data: "zm=2",		     		

		     success: function(msg){

    		   		$('#odp').ajaxComplete(function(event, request){	

    			  	$('#odp').html(msg);

    	   		 });    

		}



		});

} [/code]

Wygląda to tak, że jak kliknę przycisk ‘Przycisk’, wiersz tabeli się pokazuje, od razu pokazuje się gif ‘loading.gif’, ale gdy tylko wykona się .ajaxComplete wszystko ukrywa się z powrotem…

No i moje pytanie brzmi właśnie tak: czemu po wykonaniu ajaxComplete wiersz tabeli znowu się ukrywa?

Z góry dzięki za wszelkie rady.

Sprawdziłeś zawartość msg? Jeśli msg jest pustym ciągiem, to może się tak dziać.

Tak. Testowo msg to:

jakis tekst

[/code]

No ale nawet jakby nic nie zwróciło to i tak powinno się ukryć na ponowne kliknięcie przycisku.

Przyczyna dla której wiersz mógłby być niewidoczny przy pustym stringu leży w CSSach - zależnie od tego jak ostylowany jest dokument, pusty ciąg mógłby wyglądać jak brak wiersza. Ale ogólnie to SOA#1 - u mnie działa. Sprawdziłem ten kawałek kodu i jest ok. Jedyne co mogę polecić to aktualizacja jQuery (może to błąd używanej wersji) i/lub debugowanie deweloperskiej wersji jQuery.

Faktycznie… działa. Nie sprawdzałem tego, ponieważ miał to być przykład poglądowy. Tak naprawdę mam trochę inaczej.

Tabele wczytuje najpierw przez ajaxa… Dodajmy do poprzedniego kodu:

[/code] A w pliku qwe.php:

[code] if(isset($_POST[‘opt’]) && $_POST[‘opt’]==2) { ?> Tabela:

| |

<?php }?>

I teraz dostajemy ‘Tabela:’ , jak klikniemy przycisk ‘Przycisk’ to przez chwile zobaczymy gifa ‘loading.gif’ po czym znika. Odpowiedź jest z PHP. Widać wszystko ładnie pięknie w Firebugu…

Podsumowując: wczytuję od razu tabelę przez ajaxa, która ma ukryty wiersz. Klikając ‘Przycisk’ chcę odkryć wiersz i wczytać odpowiedź funkcji ‘mojaFunkcja()’ w komórkę tej tabeli. Lecz tylko widać przez moment samego gifa. ](*,)