Witam,
Jakiś czas temu pisałem o tym jak zrobić żeby wybierając z combo jakąś opcję, drugie combo sczytywało odpowiednie dane z bazy - na zasadzie model i marka samochodu. Ściągnąłem skrypt, przerobiłem i działa... Tyle, że sprawdzałem to na Firefoxie :/ Na IE 7 wybierając opcję z pierwszego combo z drugiego nic nie pobiera.
Strona: <Marka:<select name="marka" id="marka" onchange="ajaxFunction()">
<? $wynik=mysql_query("SELECT * FROM marka ORDER BY nazwa ASC"); echo "<option value='".$row['id']."'>".$row['nazwa']."</option>"; } ?>
</select>
Model:<select name='model' id="ajax"></select>
Pobieranie rekodów z bazy:require("../config.php");
$marka = $_GET['marka'];
$query = "SELECT * FROM model WHERE marka = '$marka' ORDER BY nazwa ASC";
echo "<option value=".$row['id'].">".$row['nazwa']."</option>"; }
Skrypt jquery/ajax:function ajaxFunction(){
var ajaxRequest;
try{
// Opera 8.0+, Firefox, Safari
ajaxRequest = new XMLHttpRequest();
} catch (e){
// Internet Explorer Browsers
try{
ajaxRequest = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try{
ajaxRequest = new ActiveXObject("Microsoft.XMLHTTP");
} catch (e){
// Something went wrong
alert("Błąd! Musisz zaktualizować przeglądarkę!");
return false;
}
}
}
// Receive Data Function
ajaxRequest.onreadystatechange = function(){
if(ajaxRequest.readyState == 4){
var ajaxDisplay = document.getElementById('ajax');
ajaxDisplay.innerHTML = ajaxRequest.responseText;
}
}
var marka = document.getElementById('marka').value;
var queryString = "?marka=" + marka;
ajaxRequest.open("GET", "modele.php" + queryString, true);
ajaxRequest.send(null);
}
Pomóżcie

Pozdrawiam