BlueGEEK Journal

Accueil > Manip’s > Javascript > Envoyer simplement un message par un Mailto qui marche même avec (...)

Mailto

Envoyer simplement un message par un Mailto qui marche même avec IE

FORM, Button, Mailto

samedi 31 mars 2007, par bluegyn_spip

PROCEDURE CLASSIQUE

- Marche parfaitement sous FIREFOX, mais envoie des champs vides sous IE

- Voila comment contourner ce bogue IE et bénéficier en plus d’une mise en page sophistiquée du message posté.

RAPPELS

- Pour envoyer très simplement un message à partir d’un navigateur à une adresse e-mail, il est courant de se servir du protocole MAILTO : reconnu par tous les navigateurs

- Le Courrielleur par défaut de l’utilisateur est automatiquement reconnu, ouvert et le message est déposé dans la boite d’envoi

- L’utilisateur n’a plus alors qu’à confirmer l’envoi, comme dans tout protocole de messagerie classique.


MISE EN OEUVRE

- On propose donc de remplacer le bouton de soumission du formulaire (SUBMIT)

  • Qui plante sous IE,

- Par un simple bouton qui appelle la fonction Javascript "Envoyer()"

- C’est à peine plus compliqué

  • C’est la suite qui se corse un peu

FONCTION ENVOYER

- Une fonction Javascript s’écrit dans un conteneur HTML délimité par 2 balises SCRIPT


Le coeur de la fonction Envoyer est une routine Javascript qui active un Hyperlien vers Mailto de cette façon

- Il ne reste plus à définir les variables sujet et contenu

- On remarque la fonction javascript escape qui convertit le texte en un langage compréhensible par le courielleur (par exemple les espaces sont remplacés par des %20)


- Passons sur le sujet qui est facile à écrire puisqu’il n’admet pas les mises en forme

  • var sujet="Sujet du message" ;

- Le contenu est plus complexe, car il nécéssite un balisage HTML simplifié

EXEMPLE

  • var contenu =

- "<html>"+

- "Docteur :"  + F.Medecin.value +

- "vers laboratoire : " + F.Laboratoire.value + "<br>" +

- "Patient :<br>" + F.Nom_Patient.value + "<br>"+

- "<b>Commentaire :</b> "+ F.Commentaire.value + "<br>"+

- "<em>Dr HILD</em>"+

- "</html >" ;


Voir en ligne : http://bluegyn.com/mailto/pma/


LES CONSEILS QUE L’ON PEUT DONNER :

- En cas d’utilisation d’enrichissements HTML il est indispensable de baliser le contenu par :


Ne pas oublier d’échapper le contenu ( escape (contenu ) )


Evitez les diacritiques dans le message, ( accents : é à Oû etc...) ils provoquent des réactions imprévisibles ( même avec les entités HTML &eacute; passe dans Thunderbird, mais plante Eudora

Messages