Opětovné načtení fce po odeslání formuláře – JavaScript, AJAX, jQuery – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Opětovné načtení fce po odeslání formuláře – JavaScript, AJAX, jQuery – Fórum – Programujte.comOpětovné načtení fce po odeslání formuláře – JavaScript, AJAX, jQuery – Fórum – Programujte.com

 

TkTz
~ Anonymní uživatel
11 příspěvků
4. 12. 2012   #1
-
0
-

Dobrý den,

mám v index.php souboru naincludován soubor mapy.js (typické mapové podklady od googlu ve verzi 3). O načteni map do konkrétního DIVu se stará html tag <body onload="loadmap()">, který samozřejmě bez problému funguje.

Problém nastane však ve chvíli, kdy uživatel na stránce index.php odešle formulář metodou POST(přes ajax), sám na sebe tedy kdyby to byl GET dostali bychom např. něco podobného index.php?i=5&j=9 (po refreshi v browseru se samozřejmě načte) kdy se již googlovská mapa nenačte. Tedy dle mého názoru se již nezavolá funkce loadmap().

Prosím můžete mi poradit, jak se poprat s tímto problémem. Jak tedy odeslat formulář pomocí ajaxu a opětovně zavolat funkci loadmap(), která načtě google mapu do konkrétního DIVu ? Děkuji TkTz 

Nahlásit jako SPAM
IP: 86.49.46.–
CZechBoY+4
Věrný člen
5. 12. 2012   #2
-
0
-

#1 TkTz
co třeba zavolat funkci loadmap po odeslání formuláře?

Nahlásit jako SPAM
IP: 213.192.10.–
TkTz
~ Anonymní uživatel
11 příspěvků
5. 12. 2012   #3
-
0
-

Ano, totomne taky napadlo, volal jsem ji takto : <form action="" method="post" onsubmit="loadmap()"> a bohuzel nic.

Nějaké další nápady ? děkuji

Nahlásit jako SPAM
IP: 86.49.46.–
CZechBoY+4
Věrný člen
5. 12. 2012   #4
-
0
-

#3 TkTz
no ale kde máš ten ajax potom?

Nahlásit jako SPAM
IP: 213.192.10.–
TkTz
~ Anonymní uživatel
11 příspěvků
5. 12. 2012   #5
-
0
-

Mám ho schovaný v tagu <script> takto:

	$(document).ready(function(){
	$("#checkin-form").submit(function(e) {
		var dataString = "bla="+ bla + "&blu="+ blu + "&bli=" + bli + "&ex=" + ex;
		$.ajax(
		{
			type: "POST",
			url: "index.php",
			data: dataString,
			success: function()
				{
//					$('.success').fadeIn(200).show();
//					$('.error').fadeOut(200).hide();
				}
		});
		return false;
	});

všechno je v jedné stránce. tzn. že skript index.php volá sám sebe.

Nahlásit jako SPAM
IP: 86.49.46.–
CZechBoY+4
Věrný člen
5. 12. 2012   #6
-
0
-

#5 TkTz
a tady je ta funkce loadmap kde? :)

dej tam ještě loadmap(); před ten return...

Nahlásit jako SPAM
IP: 213.192.10.–
TkTz
~ Anonymní uživatel
11 příspěvků
5. 12. 2012   #7
-
0
-

Funkce loadmap() je v souboru mapa.js naincludována pomocí <script type="text/javascript" src="./js/mapa.js"></script>.

Když jsem dal zapsal před return loadmap(); tak se stejně mapa po odeslání formuláře znova neinicializovala.

Nahlásit jako SPAM
IP: 86.49.46.–
CZechBoY+4
Věrný člen
5. 12. 2012   #8
-
0
-

#7 TkTz
tak to zkus nacpat do toho success

jinak ten ajax stejně nic nedělá tak co by se mělo změnit?

Nahlásit jako SPAM
IP: 213.192.10.–
TkTz
~ Anonymní uživatel
11 příspěvků
5. 12. 2012   #9
-
0
-

Počkej počkej, jak nic nedělá ? Postne data z formuláře skriptu (sám sobě, tedy index.php) nebo ne ? 

Nahlásit jako SPAM
IP: 86.49.46.–
CZechBoY+4
Věrný člen
5. 12. 2012   #10
-
0
-

#9 TkTz
no to jo, ale nikde se nic nemění

Nahlásit jako SPAM
IP: 213.192.10.–
TkTz
~ Anonymní uživatel
11 příspěvků
5. 12. 2012   #11
-
0
-

No jasně, tak daleko zatím nejsem :) Zatím jen posílám data, která se uloží do mysql a potřebuji obnovit tu stránku tak jak byla před odesláním, tedy znova zavolat funkci loadmap(), protože se mapa znova po odeslání nenačte.

Nahlásit jako SPAM
IP: 86.49.46.–
CZechBoY+4
Věrný člen
5. 12. 2012   #12
-
0
-

#11 TkTz
když odešleš formulář tak ta mapa zmizí?

Nahlásit jako SPAM
IP: 213.192.10.–
TkTz
~ Anonymní uživatel
11 příspěvků
5. 12. 2012   #13
-
0
-

Ano, přesně tak !

Nahlásit jako SPAM
IP: 86.49.46.–
CZechBoY+4
Věrný člen
5. 12. 2012   #14
-
0
-

#13 TkTz
nevim co s tim, pošli kde to máš uploadnutý, mrknu se jestli to nehází nějaký chyby, nebo jestli tam není nějaká pitomost

Nahlásit jako SPAM
IP: 213.192.10.–
TkTz
~ Anonymní uživatel
11 příspěvků
5. 12. 2012   #15
-
0
-

Napadlo mě ještě, že bych mezi složený závorky u success dal toto :  

$('.map_div').load(loadmap());

Bohužel ale taky nefunguje :) Tak dík moc za rady, já ještě pogoogluju ...

Nahlásit jako SPAM
IP: 86.49.46.–
CZechBoY+4
Věrný člen
5. 12. 2012   #16
-
0
-

#15 TkTz
koukni se co vypisuje firebug, třeba tam je nějaká chyba...

Nahlásit jako SPAM
IP: 213.192.10.–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 17 hostů

Podobná vlákna

Odeslani formulare — založil Anonymní uživatel

Odeslaní formuláře — založil kall_ell

Odeslani weboveho formulare — založil antton

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý