Majuscule et minuscule

Messages postés
30
Date d'inscription
dimanche 10 mars 2013
Dernière intervention
11 novembre 2017
-
Bonjour,
suivant l'input suivant:
<input type="text" onChange="value=this.value.charAt(0).toUpperCase() + this.value.toLowerCase();" name="nom" size="52" maxlength="526">

qu'est ce qui cloche pour avoir un format de type: Tout en minuscule avec Majuscule pour la 1ère lettre de chaque mot ?
merci d'avance
@+
Afficher la suite 

Votre réponse

5 réponses

Messages postés
1663
Date d'inscription
vendredi 9 mai 2008
Statut
Modérateur
Dernière intervention
3 novembre 2018
0
Merci
bonjour

il serait préférable de séparer le html du JavaScript



Commenter la réponse de @karamel
Messages postés
30
Date d'inscription
dimanche 10 mars 2013
Dernière intervention
11 novembre 2017
0
Merci
comment ?
Commenter la réponse de archi57
Messages postés
1663
Date d'inscription
vendredi 9 mai 2008
Statut
Modérateur
Dernière intervention
3 novembre 2018
0
Merci
dans le code tu a les deux solutions avec la correction il manquait un this et il fallait aussi utilisé substr() pour récupérer le texte a partir de la position du deuxième caractère.

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<style type="text/css">

body{
 background-color:gray; 
}

</style>
<script>

function majuscule(lui){

lui.value=lui.value.charAt(0).toUpperCase() + lui.value.substr(1, lui.value.length-1).toLowerCase();

}
</script>
</head>
<body>

<input type="text" oninput="majuscule(this)" name="nom" size="52" maxlength="526">

<input type="text" oninput="this.value=this.value.charAt(0).toUpperCase() + this.value.substr(1, this.value.length-1).toLowerCase();" name="nom" size="52" maxlength="526">

</body>
</html>


rien ne sert de courir il faut partir a point.
cours Forest cours !
Commenter la réponse de @karamel
Messages postés
30
Date d'inscription
dimanche 10 mars 2013
Dernière intervention
11 novembre 2017
0
Merci
Merci Karamel
Peut on mettre un seul input pour le Nom & Prénom ?
par ailleur j'ai remplacé Oninput par onchange
@+
Commenter la réponse de archi57
Messages postés
1663
Date d'inscription
vendredi 9 mai 2008
Statut
Modérateur
Dernière intervention
3 novembre 2018
0
Merci
essai ca j'ai mis oninput et onchange l'avantage de oninput c'est que c'est mis a jour a chaque frappe par contre ie ne le supporte pas

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>

<style type="text/css">

body{
 background-color:gray; 
}

</style>

<script>



function majuscule(lui){

var tb=lui.value.split(" ")

var modif=""

for(var i=0;i<tb.length;i++){

tb[i]=tb[i].charAt(0).toUpperCase() + tb[i].substr(1, tb[i].length-1).toLowerCase();
modif+= i==tb.length-1 ? tb[i] : tb[i]+" "
}

lui.value=modif

}

</script>

</head>
<body>

<input type="text" oninput="majuscule(this)" onchange="majuscule(this)" name="nom" size="52" maxlength="526">

</body>
</html>


techniquement je splite la chaine en fonction des espace afin de créer un tableau avec pour chaque indices un mots ensuite je refait l’opération d'ajout de majuscules pour chaque mot et je réinsert le tout dans le input

rien ne sert de courir il faut partir a point.
cours Forest cours !
Commenter la réponse de @karamel

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.