bonjour à tous.
Je souhaite réaliser des liens en ajax. ça c'est la partie simple théorique. maisntenant l'autre partie. les liens sont des éléments d'une liste que je crée également.
pour mieux comprendre je vais afficher le code.
///////////////////////////////////////////////////////////////////
function ajax()
{
var l1 = f.elements["list1"];
var l2 = f.elements["list2"];
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", "species.php", true);
xhr_object.onreadystatechange = function()
{
if(xhr_object.readyState == 4)
eval(xhr_object.responseText);
}
xhr_object.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
var data = "family="+escape(l1.options[index].value)+"&form="+f.name+"&select=list2";
xhr_object.send(data);
}
}
///////////////////////////////// page species.php////////////////////////
header('Content-type: text/html; charset=iso-8859-1');
$mysql_db = @mysql_connect("localhost", "root", "");
@mysql_select_db("onli");
$query = "SELECT nom_produit FROM liste WHERE categorie_produit = '".$_POST["family"]."';";
$result = @mysql_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["nom_produit"].'");';
@mysql_close($mysql_db);
/////////////////////////////////////////////////////////
donc comme vous pouvez le voir je crée des options dans une liste. les option se crée très bien comme je le souhaiter. maintenant mon soucis et de faire en sorte que mes options devienne des liens options et c'est là que je bug. je n'arrive pas à trouver la bonne syntaxe.
merci à tous de votre futur aide.
bonne fin de matinée
et une victoire de plus pour Mr canard
