Autor | Zpráva | ||
---|---|---|---|
wise Profil |
#1 · Zasláno: 9. 8. 2010, 13:34:08
Zdravím,
při loginu do administrace používám jquery ajax, vše do včerejška běželo v pořádku, když najednou, jakmile se klikne na tlačítko Přihlásit, odchytim javascript chybu v jquery souboru, který načítám z internetu na řádku 512 object is null přičemž kolem řádku 512 je: // args is for internal usage only each: function( object, callback, args ) { var name, i = 0, length = object.length, // 512 ale hlavně je to poslední verze stažená z internetu. Pokud se podíváte do souboru onLoad, tak od řádku 153 začíná co se má stát při úspěšném ajax požadavku. Vše fungovalo ok. Nicméně poku odstraním $.each atd... už to chybu nehlásí, ale logicky nefunguje vše jak má. Nevíte, kde je problém? Děkuji. |
||
_es Profil |
#2 · Zasláno: 9. 8. 2010, 13:55:25
wise:
Chyba nie je v jQuery ale v tvojom kóde, ktorý tej jQuery metóde dáva ako prvý argument objekt null .
Presne tak, ako je v tej chybovej správe. |
||
Chamurappi Profil |
#3 · Zasláno: 9. 8. 2010, 14:31:19
Reaguji na wise:
„Nevíte, kde je problém?“ Napiš autorům jQuery, ať se naučí vyhazovat při chybném použití smysluplnější výjimky. „je to poslední verze stažená z internetu“ Zjevně i nezapakovaná. Jinak by ses dozvěděl mnohem výřečněji, že „a is null“ :-) „Pokud se podíváte do souboru onLoad, tak […]“ Jak? Vidím tu všehovšudy jen kousek zdrojáku z jQuery, nic víc, co by šlo prozkoumat… |
||
wise Profil |
#4 · Zasláno: 9. 8. 2010, 20:17:08
Zapomněl jsem přiložit odkaz, pardon :) nevíte kde může být tedy ta chyba? http://fushi.mair.cz/admin/
_es: Chyba je v js souboru, který stahuji z internetu jako poslední verze jquery... |
||
Chamurappi Profil |
#5 · Zasláno: 9. 8. 2010, 20:36:12
Reaguji na wise:
„Chyba je v js souboru, který stahuji z internetu jako poslední verze jquery…“ To je geniální nápad, posílat přihlašovací údaje přes skript uložený na cizím serveru někde v tramtárii… Popsaná chyba se mi neprojevuje. Asi máš náladový skript na straně serveru, který někdy posílá správně formátovaná data a někdy nic.
|
||
wise Profil |
#6 · Zasláno: 9. 8. 2010, 20:40:58
Chamurappi:
„To je geniální nápad, posílat přihlašovací údaje přes skript uložený na cizím serveru někde v tramtárii…“ přihlašovací údaje posílám přes soubor onload.js, který je uložen na mém serveru Chyba se neprojeví, ale pokud se klikne na tlačítko Přihlásit, zobrazí se chyba např. v chybové konzoli ve firefoxu...je to js chyba... |
||
_es Profil |
#7 · Zasláno: 10. 8. 2010, 14:27:10
wise:
„Chyba je v js souboru, který stahuji z internetu jako poslední verze jquery…“ Chybová konzola zaznamená chybu v súboru jQuery, no chyba vznikne v dôsledku toho, že tej metóde jQuery predáš nevhodný argument - objekt null v svojom skripte onload.js .
jQuery nepoužívam, tak sa mi nechce študovať, čo tam máš zle, možno aj nič, len ajaxový požiadavok nič nevracia. |
||
Chamurappi Profil |
#8 · Zasláno: 10. 8. 2010, 15:09:32
Reaguji na wise:
„přihlašovací údaje posílám přes soubor onload.js, který je uložen na mém serveru“ Ne, tam jen voláš funkci, která je v souboru uloženém na cizím serveru. „Chyba se neprojeví, ale pokud se klikne na tlačítko Přihlásit, zobrazí se chyba např. v chybové konzoli“ To už jsem pochopil z prvního příspěvku, že musím kliknout na tlačítko. Klikám a nic. Aha, už to vidím, ty se (alespoň teď) pokoušíš stahovat data z jiné domény, než na které je umístěná stránka. To nejde. |
||
ah01 Profil |
#9 · Zasláno: 10. 8. 2010, 15:15:36
wise:
Na řádku 152 svého skriptu máš: … 152: $.each(data, function(i, item){ … proměnná data je null. Mimochodem, jak poznamenal Chamurappi, používat veřejné CDN pro externí skripty na webu, kde zadáváš jméno a heslo je docela odvážné. Opravdu ti stojí za to riziko mít jQuery na jiném serveru? |
||
wise Profil |
#10 · Zasláno: 10. 8. 2010, 18:24:56
Když jsem volal adresu fushi.mair.cz chyba, jakmile přidám www, vše ok. Máte pravdu, stáhnu si soubor k sobě.
|
||
Chamurappi Profil |
#11 · Zasláno: 10. 8. 2010, 23:20:47
Reaguji na wise:
„Když jsem volal adresu fushi.mair.cz chyba, jakmile přidám www, vše ok.“ Jsou to dvě různé domény. Relativní adresa na login.php vztažená k doméně s www , kterou uvádíš v <base> , je na jiné doméně, než odkázaná stránka.
|
||
wise Profil |
#12 · Zasláno: 11. 8. 2010, 00:03:25 · Upravil/a: wise
Přesně tak, snažím se to přesměrovat, ale nechce to jít. V tomto se moc nevyznám. Nevíte proč nejede?
RewriteEngine on RewriteCond %{HTTP_HOST} ^sub\.domain\.cz/admin/ [nc] RewriteRule (.*) http://www.sub.domani.cz/admin/$1 [R=301,L] |
||
Chamurappi Profil |
#13 · Zasláno: 11. 8. 2010, 00:09:07
Reaguji na wise:
Není jednodušší tu nežádoucí verzi adresy vůbec nepoužívat a neodkazovat na ni? Nebo nepoužívat vůbec <base> a nechat relativní adresy, ať se vztahují k nalistované adrese?
|
||
wise Profil |
#14 · Zasláno: 11. 8. 2010, 00:11:26
Tady nejde o neodkazování. Já už nyní u většiny adres nepíšu při zadávání www., takže tohle to neřeší. Určitě jsou i jiné metody, ale já bych preferoval tuto. Nevíš, kde je problém v tom přesměrování teda?
|
||
Chamurappi Profil |
#15 · Zasláno: 11. 8. 2010, 00:28:12
Reaguji na wise:
Stejně si myslím, že používáš úplně zbytečně <base> .
„Nevíš, kde je problém v tom přesměrování teda?“ Nevím, Apachům neholduji, ale prolézáním fóra a metodou pokus-omyl bys to mohl zvládnout. |
||
wise Profil |
#16 · Zasláno: 11. 8. 2010, 01:26:46
OK, díky za rady a pomoc.
|
||
Časová prodleva: 14 let
|
0