Autor | Zpráva | ||
---|---|---|---|
final Profil * |
#1 · Zasláno: 23. 12. 2011, 14:26:33
Zdravím,..
Potrebujem poradiť ohľadom jquery funkcií ajax(), kódy: html: <input type='button' id='napisat' onClick='napisat()' value='Odoslať'> function napisat() { var b=50; $.ajax({ url: "subor.php", type: "POST", data: "a="+b, cache: false, success: function (odpoved) { if (odpoved == "ok"){$(body).html('funguje');} } }); } <?php echo "ok"; ?> Kde je problém?ďakujem za pomoc |
||
Medvídek Profil |
#2 · Zasláno: 23. 12. 2011, 15:30:29
final:
Neni problem v tom, že není definován dataType? Co jinak na to konzole? Zkoušel ste co vypadne ve firebugu? |
||
final Profil * |
#3 · Zasláno: 23. 12. 2011, 15:34:53
:D tak ďaleko ešte nie som .. som začiatočník skôr,dataType sa kde definuje?firebug ani neviem čo je :)
|
||
Medvídek Profil |
#4 · Zasláno: 23. 12. 2011, 16:15:11
final:
http://api.jquery.com/jQuery.ajax/ dataTypeString Default: Intelligent Guess (xml, json, script, or html) Firebug je nástroj pro Firefox, tam by si viděl, jestli ti soubor subor.php správně vrací to, co požaduješ a jestli ho načítáš na správném místě. Existuje opravdu soubor na adrese, kde ho načítáš? tj na stejném místě jako je soubor ve kterém je includován tento javascript? |
||
final Profil * |
#5 · Zasláno: 23. 12. 2011, 16:36:14
dal som dataType: html
bez úspechu :( tomu firebugu nerozumiem,mám index.php kde je <script src=index.js></script> a tlačidlo, všetko je v poriadku |
||
pcmanik Profil |
#6 · Zasláno: 23. 12. 2011, 16:53:10 · Upravil/a: pcmanik
final:
Daj nam odkaz na zivu ukazku, datatype netreba nastavovat, urobi sa to same. |
||
Medvídek Profil |
#7 · Zasláno: 23. 12. 2011, 17:37:40
pcmanik:
„datatype netreba nastavovat, urobi sa to same“ Ale je lepší to vyplnit. v PHP můžeš mít taky undefinned variable, ale přijde mi čistější to vyplnit. final: Jak psal pcmanik, nezbývá než sem dát živou ukázku. |
||
final Profil * |
#8 · Zasláno: 23. 12. 2011, 17:40:44
Ďakujem za pomoc,ale "rozpitval" som kód na časti všetko fungovalo dal som to dokopy a ide to a pritom je to to isté čo je v mojom 1. príspevku.neviem kde bola chyba ale hlavne že to už ide :)
|
||
final Profil * |
#9 · Zasláno: 24. 12. 2011, 14:46:49 · Upravil/a: final
Zdravím zase neviem prečo ale zase mi to nefunguje :( kód:
index.php <script src="jquery-1.3.1.min.js"></script> <input type=button onClick="funkcia()" value=odoslať> <script> var b=50; function funkcia() { $.ajax({ url: "stranka.php", type: "POST", data: "a="+b, cache: false, success: function (odpoved) { alert (odpoved); if (odpoved == "ok"){ alert ("funguje");} } }); } </script> <?php echo "ok"; ?> Začínam už prichádzať o nervy vie niekto kde je chyba? ďakujem moc. ak chcete živú ukážku: http://ukazkajpw.8u.cz/ po kliknutí v hláške sú aj reklamy ale na konci si všimnite ok ibaže žiadnu ďalšiu hlášku už nevypíše :/ |
||
fandaa Profil |
#10 · Zasláno: 24. 12. 2011, 19:02:19 · Upravil/a: fandaa
final:
Endora si do tebou posílaného dokumentu (stranka.php) zřejmě automaticky vkládá i svou reklamu, proto se proměnná odpoved nebude rovnat ok, neboť jsou součástí i ty zdrojové kódy reklamy. Zkus to na nějakém hostingu bez reklam, mělo by to fungovat. Editace: Případně zde jsem našel jiné řešení - http://www.php.cekuj.net/ajax/freehosting-na-endore-a-ajax |
||
pcmanik Profil |
#11 · Zasláno: 24. 12. 2011, 19:50:37
final:
Pouzivaj nove jQuery, uz je aktualne verzia 1.7.1. A miesto onlick priamo v kode pouzi priradenie udalosti na element. |
||
Radek9 Profil |
#12 · Zasláno: 24. 12. 2011, 20:52:03
pcmanik:
„A miesto onlick priamo v kode pouzi priradenie udalosti na element.“ Bude to mít absolutně stejný efekt. |
||
pcmanik Profil |
#13 · Zasláno: 24. 12. 2011, 21:09:35
Radek9:
Efekt ano, ale z dlhodobeho hladiska je to tak ovela jednoduchsie, ako sa potom prehrabavat kodom a zistovat odkial sa ta funkcia napisat vola. |
||
final Profil * |
#14 · Zasláno: 24. 12. 2011, 21:11:40
fandaa:
to nie je endorou tam som to dal len ako príklad,ale skopirujte si to na vašu stránku a uvidíte že tú podmienku odignoruje Tak neviem čo s tým mám robiť :( |
||
pcmanik Profil |
#15 · Zasláno: 24. 12. 2011, 21:12:35
final:
Mas obidva subory ulozene v rovnakom kodovani? |
||
final Profil * |
#16 · Zasláno: 24. 12. 2011, 21:15:12
Áno
|
||
Kcko Profil |
#17 · Zasláno: 24. 12. 2011, 22:22:06
final:
Jak Ti může vyskočit OK když tam není samotné OK ale ta reklama ... nebo co to je viz. http://ukazkajpw.8u.cz/stranka.php |
||
fandaa Profil |
#18 · Zasláno: 25. 12. 2011, 00:29:34
final:
Je to Endorou, sám ji používám. Soubor stranka.php přepiš na následující. <?php header('Content-Type: text/plain'); echo "ok"; ?> Sám jsem to na Endoře odzkoušel a funguje. Kcko: Jak jsem napsal již v příspěvku [#10]. |
||
final Profil * |
#19 · Zasláno: 25. 12. 2011, 08:49:47
Dal som to tam ale teraz za tým ok ešte niečo výpiše odkial to má?
http://ukazkajpw.8u.cz/ |
||
Kcko Profil |
#20 · Zasláno: 25. 12. 2011, 08:51:51
fandaa:
Já to chápu, zopakoval jsem to, protože zakladateli topicu to očividně stále nedochází ;-) |
||
fandaa Profil |
#21 · Zasláno: 25. 12. 2011, 11:16:53 · Upravil/a: fandaa
final:
V tom případě si zkontroluj jestli v tom souboru nemáš nějaký prázdný řádek, či cokoliv jiného. Kód, který jsem použil a funguje: <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script> <input type=button onClick="funkcia()" value=odoslat> <script> var b=50; function funkcia() { $.ajax({ url: "stranka.php", type: "POST", data: "a="+b, cache: false, success: function (odpoved) { alert (odpoved); if (odpoved == "ok"){ alert ("funguje");} } }); } </script> <?php header('Content-Type: text/plain'); echo "ok"; ?> Dále si znovu překontroluj kódování obou souborů a zkus je překódovat třeba pomocí PSPadu na UTF8. Ukázka: http://fandaa.name/test.php |
||
Časová prodleva: 12 let
|
0