AJAX - problém s maličkostí – JavaScript, AJAX, jQuery – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

AJAX - problém s maličkostí – JavaScript, AJAX, jQuery – Fórum – Programujte.comAJAX - problém s maličkostí – JavaScript, AJAX, jQuery – Fórum – Programujte.com

 

Ivan
~ Anonymní uživatel
28 příspěvků
8. 8. 2008   #1
-
0
-

Zdravím, mám tu problém.
Mám krátký kod v javascriptu, který pri zadani kraje mi zjisti mesta a vypise. Mam to tak, ze se pri OnChange selectu, kde jsou kraje zavola funkce, ktera se napoji na skript, ktery vypise mesta take do selectu. Funguje mi to v Mozille a Opere, ale ne v IE.
Dale je problem, ze to funguje pouze na prvni pokus. Kdyz zkusim zmenit opet kraj, tak uz je to necinny a mesta to jine nevypise. Nevite co s tim?

mesto.js:

function mesto() {

var http_request = false;
var string = document.getElementById('kraj').value;
var request = "kraj="+string;

if (window.XMLHttpRequest) {
http_request = new XMLHttpRequest();
} else if (window.ActiveXObject) {
try {
http_request = new ActiveXObject("Msxml2.XMLHTTP");
} catch (eror) {
http_request = new ActiveXObject("Microsoft.XMLHTTP");
}
}

http_request.onreadystatechange = function() { zpracuj(http_request); };
http_request.open('POST', 'include/mesta.php', true);
http_request.setRequestHeader('Content-Type
', 'application/x-www-form-urlencoded');
http_request.send(request);
}

function zpracuj(http_request) {
if (http_request.readyState == 4) {
if (http_request.status == 200) {
var mesta = document.getElementById("mesta");
mesta.innerHTML = http_request.responseText;

} else {
alert('Chyba');
}
}
}
var http_request = false;


kousek kodu, kde se funkce vola:
<select name="kraj" class="registrace" id="kraj" onchange="mesto();">


diky za vsechny rady...

Nahlásit jako SPAM
IP: 89.102.2.–
8. 8. 2008   #2
-
0
-

Zadnou evidentni chybu v tom nevimdim, rozhodne se ale nauc odsazovat kod. Tohle lustit je za trest.

A doporucil bych ti pouzit nejakou knihovnu na JavaScript - bud jQuery nebo Prototype. At v ten nebo v te by ten kod byl na tri az ctyri radky. Cely.

Nahlásit jako SPAM
IP: 213.220.192.–
Prosím, jestli potřebujete s něčím poradit,zeptejte se na fóru. Jakýkoliv bezdůvodný pokus mě kontaktovat skončí okamžitým přidáním do ignore listu![br][br] Současný počet osob, které to nepochopily: 7
Ivan
~ Anonymní uživatel
28 příspěvků
8. 8. 2008   #3
-
0
-

Dobře,
odsazení mám, omlouvám se, ale nějak se nedodrželo při kopirovani....

A knihovnu zacnu pouzivat, ale zatim bych rad vyresil tohle. Uz mi to jede v IE, slo o to, ze do tabulky nevklada..

Ale neustale mi nefunguje to, ze se to nechce aktualizovat pri druhe zmene prvni selectu.. Takze pri prvnim selectu se mi zobrazi ten druhej s mesty... Ale kdyz kraj zmenim, tak uz se mi ten druhej select nenahradi tim novym s jinymi mesty...poradite?

Nahlásit jako SPAM
IP: 89.102.2.–
8. 8. 2008   #4
-
0
-

Mozna vidim kde je problem - ty pracujes s promennu http_request jako s globalni, zaroven ji ale predavas jako parametr. To muze zpusobovat chaos (jsem liny premyslet nad tim jak, proste to zkus), bud ji pouzivaj jako globalni nebo jako lokalni a pak ji predavej.

Nahlásit jako SPAM
IP: 213.220.192.–
Prosím, jestli potřebujete s něčím poradit,zeptejte se na fóru. Jakýkoliv bezdůvodný pokus mě kontaktovat skončí okamžitým přidáním do ignore listu![br][br] Současný počet osob, které to nepochopily: 7
Ivan
~ Anonymní uživatel
28 příspěvků
8. 8. 2008   #5
-
0
-

Asi vim, co myslis, ale nedokazu to nejak aplikovat prakticky...

Nahlásit jako SPAM
IP: 89.102.2.–
Prog.0
Věrný člen
11. 8. 2008   #6
-
0
-

Problém je, že select sa v ie nedá meniť pomocou innerHTML
Pozri: http://www.quirksmode.org/js/options.html

Nahlásit jako SPAM
IP: 213.160.186.–
Prog.
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, 4 hosté

 

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