En JavaScript plaine:
function in_array(needle, haystack, argStrict)
{
var key = '', strict = !!argStrict;
if (strict)
{
for (key in haystack)
{
if (haystack[key] === needle)
return true;
}
}
else
{
for (key in haystack)
{
if (haystack[key] == needle)
return true;
}
}
return false;
}
var values = new Array(1, 2, 4);
var select = document.getElementById('selectName'); //Change to the id of the select
if (select)
{
for (var i = 0; i < select.options.length; i++)
{
//Select options matching array values, unselect others
select.options[i].selected = in_array(select.options[i].value, values, false);
}
}
MISE À JOUR: Ajout de la fonction JavaScript in_array qui imitent celui PHP
pour chaque valeur sur le tableau vous fera une boucle à travers la collection d'éléments dans la sélection? N'en faites-vous pas trop? –
Oui c'est un peu exagéré, mais puisque de nombreux éléments dans le select peuvent avoir la même valeur ... C'est peu probable, mais c'est possible :) En tout cas avec cet extrait je suppose que vous avez l'idée comment le faire. – AlexV
Je ne pense pas que le développeur devrait permettre un select avec la même valeur que les autres, ce serait la maintenabilité enfer. –