begin process at 2012 05 28 14:16:19
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Formulaire

 > PASSAGE D'UN TEXTE EN MAJUSCULE SANS UTILISER LA MÉTHODE "TOUPPERCASE"

PASSAGE D'UN TEXTE EN MAJUSCULE SANS UTILISER LA MÉTHODE "TOUPPERCASE"


 Information sur la source

Note :
5,25 / 10 - par 4 personnes
5,25 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Formulaire Niveau :Débutant Date de création :04/01/2003 Date de mise à jour :04/01/2003 13:13:16 Vu :13 940

Auteur : jeca

Ecrire un message privé
Commentaire sur cette source (8)
Ajouter un commentaire et/ou une note

 Description

La méthode "toUpperCase" focntionne très mal avec la langue française : elle transforme les caractères minuscules accentués en majuscules accentuées. Or, en Français, les majuscules ne comportent pas d'accent.

Je préfère donc utiliser le code ci-dessous qui est certainement plus long à l'éxécution, mais éminemment plus conforme au language.

Source

  • <?xml version="1.0" encoding="iso-8859-1"?>
  • <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
  • <html xmlns="http://www.w3.org/1999/xhtml">
  • <head>
  • <title></title>
  • <script type="text/javascript">
  • function majuscule(obj)
  • {
  • var minus = "aàâäbcçdeéèêëfghiîïjklmnoôöpqrstuùûvwxyz"
  • var majus = "AAAABCCDEEEEEFGHIIIJKLMNOOOPQRSTUUUVWXYZ"
  • var entree = obj.texte.value;
  • var sortie = "";
  • for (var i = 0 ; i < entree.length ; i++)
  • {
  • var car = entree.substr(i, 1);
  • sortie += (minus.indexOf(car) != -1) ? majus.substr(minus.indexOf(car), 1) : car;
  • }
  • obj.texte.value = sortie;
  • }
  • </script>
  • </head>
  • <body>
  • <form name="formulaire" id="formulaire" method="post" action="">
  • <table>
  • <tr>
  • <td>
  • <input type="text" name="texte" id="texte" value="Jérôme" />
  • </td>
  • </tr>
  • <tr>
  • <td>
  • <input type="button" value="Tester" onclick="majuscule(this.form)" />
  • </td>
  • </tr>
  • </table>
  • </form>
  • </body>
  • </html>
<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <title></title>
    <script type="text/javascript">
      function majuscule(obj)
      {
        var minus = "aàâäbcçdeéèêëfghiîïjklmnoôöpqrstuùûvwxyz"        
        var majus = "AAAABCCDEEEEEFGHIIIJKLMNOOOPQRSTUUUVWXYZ"
        var entree = obj.texte.value;
        var sortie = "";
        for (var i = 0 ; i < entree.length ; i++)
        {
          var car = entree.substr(i, 1);
          sortie += (minus.indexOf(car) != -1) ? majus.substr(minus.indexOf(car), 1) : car;
        }
        obj.texte.value = sortie;
      }
    </script>
  </head>
  <body>
    <form name="formulaire" id="formulaire" method="post" action="">
      <table>
        <tr>
          <td>
            <input type="text" name="texte" id="texte" value="Jérôme" />
          </td>
        </tr>
        <tr>
          <td>
            <input type="button" value="Tester" onclick="majuscule(this.form)" />
          </td>
        </tr>
      </table>
    </form>
  </body>
</html>



 Sources de la même categorie

Source avec Zip Source avec une capture FORMULAIRE TABLEAU par vic511
Source avec Zip Source avec une capture FORMULAIRE DYNAMIQUE par Niidhogg
Source avec Zip Source avec une capture CONTRAINTE DE SAISIE SUR CHAMPS INPUT par ryosama
SELECTS DÉPENDANTS PRÉ-CHARGÉS D'UNE SEULE OPTION par phm
Source avec Zip Source avec une capture BOITE DE DIALOGUE MODALE DE SÉLECTION D'UNE LISTE D'ICONES par JJDai

Commentaires et avis

Commentaire de iubito le 04/01/2003 19:19:43

pffff.... en théorie les majuscules ne devraient pas avoir d'accent. le mieux c'est de prévoir un script qui converti toutes les lettres accentues ã, ñ, &#351;, &#259;, &#355;, a avec un rond au dessus,... pour que le script fonctionne pour nos amis espagnols, finlandais, roumains, polonais...

Commentaire de nitro120 le 21/01/2003 18:48:49

ca na aucune utilité ce script

Commentaire de teska le 19/03/2003 19:31:34

pfouu, justement, cette fonction est très bien faite. Je te signale que l'académie française préconise de mettre les accents sur les majuscules, donc pas la peine de s'en priver.

Commentaire de Voulf le 10/03/2005 14:20:10

Salut,

effectivement les majuscules sont recommandées mais il est des cas où l'on a besoin de forcer la passage en maj sans accents.

La seule chose que l'on peut trouver à redire, c'est le doctype xhtml strict qui impose séparation contenu / comportement, ce qui n'est pas le cas avec des javascripts intrusifs, toujours est-il que celà m'ouvre une piste pour un problème au boulot.

Merci à toi !

Commentaire de Muadib24 le 26/11/2005 16:52:23

Grossière erreur. Je suis infographiste et je connais parfaitement les règles de typographie française, et j'affirme qu'il faut des majuscules accentuées. Exemple : "SALE SUCRE" ! Je veux dire quoi ? Salé sucré ? Sale sucré ? etc...

Commentaire de myjoss le 28/12/2005 10:40:35

Bonjour,
Moi je dis BRAVO pour ce script. Il y a des gens comme moi qui ont besoin de textes en majuscules sans accent pour les stocker dans une base MYSQL.
Alors un grand merci pour ce script qui règle le problème et qui donne un bon exemple de programmation javascript.
Bonne continuation.
Joss.

Commentaire de d2nis le 06/03/2008 10:30:17

D'accord, mais cette fonction n'est pas portable.

En effet, pour que indexOf fonctionne, l'encodage de la chaîne minus devra être le même que l'encodage du formulaire qui contient la donnée entrante (obj).

Dans le cas de l'exemple, la chaîne est en ISO-8859-1, l'encodage du formulaire sera ISO-8859-1.

Commentaire de elron8 le 30/01/2009 09:37:13

C'est bien beau tout ca mais moi ce code m'a servi donc merci!!

 Ajouter un commentaire




Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 5,382 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales