Hallo,
ich verwende AJAX um in einem Formuöar abhängeige Daten aus einer DB zu holen.
Quelltext:
###################
<script type="text/javascript">
var req;
function loadXMLDoc(url)
{
if (window.XMLHttpRequest) {
req = new XMLHttpRequest();
req.onreadystatechange = processReqChange;
req.open("GET", url, true);
req.send(null);
} else if (window.ActiveXObject) {
req = new ActiveXObject("Microsoft.XMLHTTP");
if (req)
req.onreadystatechange = processReqChange;
req.open("GET", url, true);
req.send();
}
}
}
function processReqChange()
{
if (req.readyState == 4) {
if (req.status == 200) {
document.getElementById('Absatz').innerHTML = "";
document.getElementById('Absatz').innerHTML = req.responseText;
} else {
alert("Kann XML-Daten nicht lesen!");
}
}
}
</script>
<TABLE>
<TR>
<TD>Bitte Bundesland wählen</TD>
<TD>
<SELECT name="agentur"
onChange="loadXMLDoc('module/Bewerbungen/xmlhttpreq.php?bland='+document.getElementById('agentur').va
lue);">
<option value="">[ Bitte auswählen ]</option>
<?php
$sql = "SELECT id,agentur FROM a_bland ORDER BY agentur";
$res = mysql_query($sql);
while($zbl = mysql_fetch_row($res)):
?>
<option value="<?php echo"$zbl[0]"; ?>"><?php echo"$zbl[1]"; ?></option>
<?php endwhile; ?>
</SELECT>
</TD>
</TR>
<TR>
<TD colspan="2" id="Absatz"> </TD>
</TR>
</TABLE>
###############
die xmlhttpdreq.php:
###############
<?php
include("../../connect/connect.php");
$erg = "<table width="100%" cellpadding=2 cellspacing=0 border=0><tr><td><hr><b>Wählen
Sie den / die Kreis(e) aus in denen Sie tätig werden wollen.</b></td></tr><tr><td>";
$sqlx = "SELECT * FROM a_kreise WHERE a_bland = '".$_GET["bland"]."' ORDER BY kreis";
$resx = mysql_query($sqlx);
while($sk = mysql_fetch_row($resx)):
$skn = htmlentities($sk[2]);
$erg .= "<label>$skn</label><input name="kreis[$sk[0]]" type="checkbox"> ";
endwhile;
$erg .= "<hr></td></tr></table>";
print($erg);
exit;
?>
##############
Das funktioniert im IE und auch Opera. Der FF macht nix. Javascript etc. ist angeschalten. Sieht jemand den Grund warum er nicht mag?
Gruß Rainer