Bonjour,
Je voudrais écrire une liste d'options select en deux couleurs.
Je prépare ma liste dans deux tableaux comme ceci:où le caractère '\u25FC' est le petit carré à mettre en couleur.
Code javascript : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 var colors = ['red','blue','green','yellow','black','white','salmon','silver','gray','navy']; // Valeurs var colorTextes = ['\u25fc red','\u25fc blue','\u25fc green','\u25fc yellow','\u25fc black','\u25fc white','\u25fc salmon','\u25fc silver','\u25fc gray','\u25fc navy']; // Textes affichés arrOptions = makeOptions(colors, colorTextes);
Ces tableaux sont transmis comme arguments à une fonction qui crée les options:Ce code provoque l'erreur suivante à la ligne 13:
Code javascript : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 function makeOptions(optionValues, optionTextes=optionValues) { var options = []; var text, i; var max = optionValues.length; //console.log(optionTextes); for (i=0; i<max; i++) { if (optionValues[i] == 'optgroup') { // inutilisé, pour l'instant } else { text = document.createTextNode(optionTextes[i]); console.log(text.substr(0, 1), text.substr(2, 10), text.substring(0, text.indexOf(' ')+1)); //if (text.substr(0, 1) == '\u25fc') text.substr(0, 1).style.color = text.substr(2, 10); options[i] = document.createElement('option'); options[i].value = optionValues[i]; options[i].appendChild(text); } } return options; }
Uncaught TypeError: text.substr is not a function
at makeOptions (22-selectFields.js:35)
at addField (22-selectFields.js:83)
at HTMLInputElement.onclick (editPrint.php:79)
Partager