Je voudrais recuperer les touches saisie par un utilisateur quand il prend le focus sur un select donc ça c'est fait (le but sera d'aider l'utilisateur à retrouver le groupe desiré)
<select id = "group" name="group" onFocus="find_group ('group')">
je recupere bien les touches saisie via cette fonction
function find_group (id) {
document.getElementById(id).onkeypress = function(event) {// 1er onkeydown puis onkeypress et en dernier onkeyup, le pavé numérique ne fonctionne pas avec onkeydown
//On vérifie le navigateur
if(navigator.appName === "Microsoft Explorer")
{
//On envoie un message avec la touche appuiée pour Internet Explorer
var char = event.keyCode;
}
else
{
//On envoie un message avec la touche appuiée pour Netscape/firefox
var char = event.which;
}
var character = String.fromCharCode(char).toLowerCase();
alert (character);
}
}
J'arrive à recuperer les numero quand maj est active aussi mais quand caps lock est actif je recupere le &, le é... et non le numero donc je voulais utiliser la fonction replace() de javascript et voila ma question est ce que je suis obligée de traiter les caractere un a un exemple :
maelob
Messages postés943Date d'inscriptionmardi 14 novembre 2006StatutMembreDernière intervention 7 août 20093 31 janv. 2008 à 13:49
Re a defaut d'avoir reussis a utiliser replace j'ai modifier ta fonction comme ceci
function change_char(char) {
var depuis = new Array("&", "é", '"', "'", "(", "-", "è", "_", "ç", "à");
var vers = new Array(1, 2, 3, 4, 5, 6, 7, 8, 9, 0)
for (i = 0; i < depuis.length; i++) {
if (depuis[i] == char) {
char = vers[i];
}
}
return (char);
}
La fonction a le comportement que j'attendais c'est donc parfait.
Merci beaucoup
Vous n’avez pas trouvé la réponse que vous recherchez ?
maelob
Messages postés943Date d'inscriptionmardi 14 novembre 2006StatutMembreDernière intervention 7 août 20093 31 janv. 2008 à 16:32
je continue ici je sais pas si c'est bien car ça concerne pas la même chose mais le meme bout de code quand meme.
Maintenant le probleme est avec les expressions regulieres...
J'ai bien recuperé la chaine entré par l'utilisateur et fait les traitements dessus. mais maintenant il faudrait que le texte correspondant soit selectionné. ça je sais faire mais pas avec les regex. Deja voila la boucle que j'ai faite.
var conteneur = document.getElementById('pict');
if (chaine.length != 0) {
for (i=0; i<element.options.length; i++) {
if (element.options[i].text.toLowerCase.match(chaine)) {
element.selectedIndex = element.options[i];
}
}
}
et ça fonctionne pas ce qui parait logique car une regex est de la forme /chaine/ mais je fait ça ça marche pas non plus :'-(