Je sèche sur une erreur qui doit me crever les yeux mais je ne vois plus rien tellement je suis scotché dessus et je ne trouve rien sur d'autres forums
Uncaught SyntaxError: expected expression, got '<'
L'appel à la fonction :
Code : Tout sélectionner
<div class="w--50">
<div class="form-group">
<label for="espece">Espèce</label>
<select name="espece" id="espece" onchange="ListeEspece(this.form)">
<?= $espece ?>
</select>
</div>
<div class="form-group">
<label for="race">Race</label>
<select name="race" id="race"></select>
</div>
</div>
Code : Tout sélectionner
function ListeEspece(f) {
var l1 = f.elements["espece"];
var l2 = f.elements["race"];
var index = l1.selectedIndex;
if(index < 1)
l2.options.length = 0;
else {
var xhr_object = null;
if(window.XMLHttpRequest) // Firefox
xhr_object = new XMLHttpRequest();
else if(window.ActiveXObject) // Internet Explorer
xhr_object = new ActiveXObject("Microsoft.XMLHTTP");
else { // XMLHttpRequest non supporté par le navigateur
alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest...");
return;
}
xhr_object.open("POST", "/views/auth/race.php", true);
xhr_object.onreadystatechange = function anonymous() {
if(xhr_object.readyState == 4)
eval(xhr_object.responseText);
}
xhr_object.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
var data = "espece="+escape(l1.options[index].value)+"&form="+f.name+"&select=race";
xhr_object.send(data);
}
}
Code : Tout sélectionner
<?php
header('Content-type: text/html; charset=iso-8859-1');
require __DIR__ . '/../inc/functions.php';
$query = "SELECT `race` FROM `animal` WHERE `espece` = '".$_POST["espece"]."' ORDER BY `race`";
$result = @tjs_query($query);
echo 'var o = null;';
echo 'var s = document.forms["'.$_POST["form"].'"].elements["'.$_POST["select"].'"];';
echo 's.options.length = 0;';
while($r = mysql_fetch_array($result))
echo 's.options[s.options.length] = new Option("'.$r["race"].'");';
?>