• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Problem z ajax

0 głosów
294 wizyt
pytanie zadane 5 grudnia 2015 w JavaScript przez michal Mądrala (5,560 p.)

Mam taki kod:

$(document).ready(function(){
	$('#szukaj_przejazdow').click(function(){
		var od = $('#od').val();
		var to = $('#do').val();
		
		$.ajax({
			type : "post",
			url : "szukaj_przejazdow.php",
			data :
			{
				od :od,
				to : to
			},
			complete : function(){
				
			},
			success: function(msg){
				$('#wynik').html(msg);
			},
			error: function(){
				alert("wystapil blad w polonczeniu");
			}
		}); // koniec ajax
	}); // koniec funkcji click
}); // koniec funkcji ready

Wynikiem tego skryptu php jest proste echo ktore składa się z tekstu ze zmiennymi.

Jeśli zamiast $('#wynik').html(msg); wstawię alert(msg); to wyświetla mi ładnie wynik w okienku, Natomiast jeśli wstawiam to do diva wynik to po wciśnieciu przycisku, albo wynik pojawia się na ułamek sekundy i znika, albo wcale się nie pojawia.

Co może być tego przyczyną?

2 odpowiedzi

+1 głos
odpowiedź 5 grudnia 2015 przez Comandeer Guru (607,060 p.)
wybrane 5 grudnia 2015 przez michal
 
Najlepsza
A nie ma jakiejś akcji, która kasuje zawartość tego elementu?
komentarz 4 stycznia 2016 przez Comandeer Guru (607,060 p.)

Musisz przekazać to e:

$('elem').on( 'event', function(e) {
    innaFunkcja( e );
} );

 

komentarz 4 stycznia 2016 przez michal Mądrala (5,560 p.)
Qrde nie wiem czy sie dobrze zrozumieliśmy. Chcę wywołać funkcję szukajprzejazdów z innego miejsca w kodzie. Nie za pomocą zdarzenia, tylko normalnie np: szukajprzejazdow(), ale nie działa. :(

Z góry dziękuje za poświęcony mi czas.
komentarz 4 stycznia 2016 przez Comandeer Guru (607,060 p.)

Hmm…

e && e.preventDefault();

?

komentarz 4 stycznia 2016 przez michal Mądrala (5,560 p.)
Dziękuje. Teraz wszystko działa. Szkoda że nie do końca wiem o co biega, no, ale widocznie jeszcze zbyt mało wiedzy posiadam. Dzięki za pomoc, pozdrawiam :)
komentarz 4 stycznia 2016 przez Comandeer Guru (607,060 p.)

To jest po prostu prostszy zapis tego:

if ( e ) {
    e.preventDefault();
}

 

0 głosów
odpowiedź 5 grudnia 2015 przez michal Mądrala (5,560 p.)
Próbowałem:

alert(msg); działa,

document.write(msg); działa,

$('#wynik').html(msg); czasami wyświetli zawartość na ułamek sekundy, a za kolejnym wykonaniem wogóle :(

Podobne pytania

0 głosów
2 odpowiedzi 475 wizyt
pytanie zadane 29 listopada 2021 w JavaScript przez Dropal Początkujący (340 p.)
+2 głosów
2 odpowiedzi 489 wizyt
pytanie zadane 23 marca 2021 w JavaScript przez dee Początkujący (360 p.)
+1 głos
0 odpowiedzi 765 wizyt
pytanie zadane 31 lipca 2020 w JavaScript przez niffe33 Nowicjusz (150 p.)

93,427 zapytań

142,421 odpowiedzi

322,649 komentarzy

62,787 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

VMware Cloud PRO - przenieś swoją infrastrukturę IT do chmury
...