AJAX - problém s maličkostí

HackForum

AJAX - problém s maličkostí#
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...
(odpovědět)
Ivan | 89.102.2.*8.8.2008 7:44
re: AJAX - problém s maličkostí#
zkus namisto
onChange="mesto();"
pouzit
onChange="mesto((new Date()).getTime());"
i kdyz tu promennou s casem nepouzijes, mela by ti zajistit, ze se ta funkce nevykonna jen po prvni zmene, ale i pri jakekoliv dalsi.
(odpovědět)
Emkei | E-mail | Website | PGP8.8.2008 9:34
re: AJAX - problém s maličkostí#
Děkuji za radu.
Bohužel to pořád nějak nefunguje.
Zkusím něco pohledat po netu...
S tou podporou IE nevíte, jak to je?
(odpovědět)
Ivan | 89.102.2.*8.8.2008 15:00
re: AJAX - problém s maličkostí#
function getHTTP(){
http=0;

if(window.XMLHttpRequest){
http=new XMLHttpRequest();
return http;

}else if(window.ActiveXObject){
http=new ActiveXObject("Microsoft.XMLHTTP");
return http;

}else{
window.alert('Přijď s jiným prohlížečem');
return false;
}
}

Tohle je moje fce co mam na chatu. Od IE6, IE7 az po FF.

Nechce se mi v tom hrabat. Stahni si FF a plugin Firebug, zapni to na localhost on ti ukaze kde je co spatne.
(odpovědět)
BlueRain | E-mail22.8.2008 9:37

Zpět
Svou ideální brigádu na léto najdete na webu Ideální brigáda
 
 
 

 
BBCode