Aller au contenu

Javascript : copy Formulaire to Clipboard


Zen Luck

Sujets conseillés

Bonjour,

Après validation d'un formulaire de bon de commande en Javascript, j'ouvre une fenêtre dans laquelle est affiché le contenu résumé de la commande.

Dans cette fenêtre, il y a un bouton IMPRIMER qui permet au client de sortir une copie sur papier, un bouton ENVOYER qui expédie la commande par mail et un bouton COPY pour copier automatiquement le contenu résumé de la commande dans le Presse Papier. Ceci permet au client de le coller dans son mail de commande s'il utilise un Webmail et pas un client messagerie.

Je cherche un javascript pour le bouton COPY. J'ai bien trouvé un script qui copie le contenue d'un Textarea dans le Clipboard mais je ne parviens pas à l'adapter dans le cadre du document.write que j'utilise... Je suis débutant en javascript et j'en suis réduis à "adapter" par tâtonnement les bouts de code trouvés ci et là...

Cordialement,

Jean-Luc Ernst

Lien vers le commentaire
Partager sur d’autres sites

Bonjour,

depuis l'envoi de mon message, j'ai un peu avancé mais j'ai toujours besoin d'un coup de pouce. Voici où j'en suis.

Je suis en train de finaliser la page du bon de commande pour un site que je prépare. J'ai utilisé des bouts de code trouvés à gauche et à droite sur le net mais comme je ne connais pas le Javascript, je procède par tâtonnement. J'ai préparé deux pages html simplifiées pour montrer mon problème actuel.

Le principe est le suivant : après avoir rempli un bon de commande, le client est amené à une nouvelle fenêtre où le contenu simplifié du bon de commande lui est présenté. Là, il peut l'IMPRIMER. Et il peut aussi COMMANDER (le contenu du bon de commande est alors envoyé par mail). De plus, le texte du bon de commande est copié automatiquement dans le presse-papier sans intervention de l'utilisateur (principe de OnLoad -> copier dans presse-papier).

Démonstration de ce fonctionnement (copie automatique dans le presse-papier)dans le fichier "test10" ici :

http://cjoint.com/?eylyQrdI6f

J'ai essayé de transférer ce code dans mon projet "pop_new19"

http://cjoint.com/?eylwDrt16t

en remplaçant le texte "test10" par le contenu des deux champs du

formulaire.

La partie COMMANDER (envoi par mail) fonctionne.

La partie IMPRIMER devrait fonctionner (la fenêtre de l'imprimante s'ouvre) mais n'a pas encore été testée.

La partie "copie du bon de commande dans le presse-papier" ne fonctionne pas probablement parce que l'écriture du code est mal réalisée (pas au bon endroit?, syntaxe?, autre?)...

Peut-être quelqu'un pourrait-il corriger ce qui ne va pas dans la partie "copie dans le presse-papier" car je patauge...

Merci.

Cordialement,

Jean-Luc Ernst

Lien vers le commentaire
Partager sur d’autres sites

Salut :D

Je m'y connais pas bien en JS, mais ma console FF me donne :

Erreur : document.contenu.valeur.createTextRange is not a function

Fichier Source : http://cjoint.com/data/eylyQrdI6f_test10.htm

Ligne : 13

Donc en gros, tu appelles une fonction que tu n'as pas dans ton fichier, je pense qu'il y a un problème de ce côté là !

C'est copié automatiquement ou il y a un bouton "copier" ? Parce que je ne vois pas de bouton copier, il doit être bien caché si c'est le cas :D

Y'a un autre problème, rien à voir :

Avertissement : La feuille de style http://cjoint.com/error404.htm a été chargée comme CSS même si son type MIME, « text/html », n'est pas « text/css »
Modifié par sarc
Lien vers le commentaire
Partager sur d’autres sites

À ma connaissance, aucun javascript ne permet de copier automatiquement quoique ce soit vers le Presse-Papiers.

Sauf bien sûr des bidouillages étranges qui ne sont compatibles avec rien d'autre qu'Internet Explorer :rolleyes: et qui se foutent éperdument des notions de standard et de compatibilité. Pas étonnant que les consoles Javascript de Firefox s'affolent quand elles lisent des trucs pareils.

Pour ma part, les 2 liens ci-dessus n'ont rien collé dans mon presse-papiers :) (et heureusement d'ailleurs, c'est mon ordinateur, mon presse-papiers, c'est moi qui décide de ce qu'il y a dedans, pas un site web)

Lien vers le commentaire
Partager sur d’autres sites

Merci Sarc,

En ce qui concerne la lecture de mes fichiers exemple postés sur CJOINT.COM, il faut cliquer-droit sur le lien du fichier en haut de page et l'afficher dans une nouvelle fenêtre. Au départ de là, tu peux voir la source "clean" et non "polluée" par CJOINT.

Cela explique sans doute les messages d'erreur que tu obtiens...

Merci de m'avoir donné une indication grâce à FireFox.

Cordialement,

Jean-Luc Ernst

Lien vers le commentaire
Partager sur d’autres sites

Bonjour Zen Luck,

Un code Javascript existe mais ne fonctionne que sous Internet Explorer.

Pour qu'un script puisse copier quelque chose dans le presse papier sous Mozilla, Netscape et Firefox, il faut que ce script soit signé par un certificat émanant d'une autorité reconnue telle que VeriSign.

J'ai le même "problème" sur la page des outils du Hub qui permet d'encrypter un mot de passe pour l'authentification http.

Ce code ne fonctionne que pour I.E., les autres doivent sélectionner le mot de passe et le coller manuellement.

Dan

Lien vers le commentaire
Partager sur d’autres sites

Bonjour Dudu,

contrairement à ce que tu crois, le Javascript permet de coller des choses dans le presse-papier, soit sur commande via appui sur un bouton par le visiteur soit automatiquement.

La copie dans le presse-papier fonctionne avec IE. Qu'elle ne fonctionne pas avec des navigateurs moins courants et moins compatibles est un problème secondaire pour moi car il peut être cirvonvenu d'une autre manière.

Mais je ne souhaitais pas entamer une discussion sur le bien-fondé de l'utilisation de tel ou tel navigateur.

Ma question sollicitait une aide dans la rectification de mon code. Il est possible que les lecteurs de ce forum qui utilisent FF soient dans l'incapacité de m'aider vu qu'ils ne peuvent tester ma fonction sur leur navigateur. Cela, je peux le comprendre. Ma question s'adresse à ceux qui utilisent IE.

Cordialement,

Jean-Luc Ernst

Lien vers le commentaire
Partager sur d’autres sites

Bonjour Dan,

Bien compris la restriction que tu décris... et que je connaissais...

Ma demande concernait les utilisateurs d'IE pour lesquels mon script permet de réaliser ce genre de facilité.

Pour les autres (que tu cites), j'ai prévu un texte explicatif sur la page ("sélection manuelle"), texte que je n'ai pas mis ici pour des raisons de légèreté et de clarté de mon exemple.

Ma question reste en suspens : qu'est-ce qui cloche dans mon code pour que cela puisse fonctionner sous IE ?

(voir aussi mes réponses à Sarc et DUdu...)

Cordialement,

Jean-Luc Ernst

Lien vers le commentaire
Partager sur d’autres sites

Bonjour Dudu,

contrairement à ce que tu crois, le Javascript permet de coller des choses dans le presse-papier, soit sur commande via appui sur un bouton par le visiteur soit automatiquement.

Oui pour les utilisateurs d'Internet Explorer. Ce que je considère comme (au choix) une faille de sécurité volontaire ou bien une intrusion. Depuis quand un site web a-t-il le droit de contrôler mon Presse-Papiers ?

Quant à la remarque du genre "ceci ne s'adresse qu'au utilisateurs d'IE" (et sous-entendu les autres, allez vous :ph34r:...), ben on appelle cela de la discrimination, je ne vois pas d'autre mot :unsure:

C'est bien triste tout çà.

Bon courage dans ta quête, quoiqu'il en soit :) et désolé de ne pas pouvoir t'aider: il s'avère que sur PC je mets un point d'honneur à ne jamais utiliser Internet Explorer compte tenu des diverses failles de sécurité qu'il présente; et sur Mac, Microsoft a poussé la discrimination jusqu'à arrêter le développement de son navigateur et ce depuis la version 5.2.3 de ce dernier (il y a environ 3 ans). Je ne peux donc pas te renseigner sur ce genre d'applications propriétaires propres à IE.

Lien vers le commentaire
Partager sur d’autres sites

Bonjour Dudu,

En ce qui concerne "l'injection" du contenu d'un formulaire de commande dans le presse-papier lors d'un processus de remplissage de "bon de commande" par le client, moi je trouve cela très pratique pour le client. Je ne suis pas parano et n'ai dès lors aucun état d'âme vis-à-vis de cette manière de procéder.

Ceux qui ont fait un autre choix (FireFox, etc.) ne verront pas leur presse-papier rempli à leur insu. C'est leur choix et il n'y a aucune discrimination là-dedans. Il leur suffira de sélectionner le texte sur la page et de le copier "volontairement" dans leur presse-papier s'ils le souhaitent. Dès lors où est le problème? Faut pas se prendre pour un mal aimé lorsqu'on utilise un logiciel autre que IE... %;>)

Je connais la "problématique" de IE mais comme plus de 50% des internautes l'utilisent ce serait suicidaire de ne pas en tenir compte dans le cadre d'un site à orientation commerciale. C'est tout simple!

Dès qu'un programmeur de javascript réellement compétent aura rectifié mon code, j'en ferai le compte-rendu ici pour information...

Cordialement,

Jean-Luc Ernst

Lien vers le commentaire
Partager sur d’autres sites

Faut pas se prendre pour un mal aimé lorsqu'on utilise un logiciel autre que IE... %;>)

Bonjour :)

Sur ma plate-forme, les utilisateurs d'Internet Explorer représentent 2%

Et le navigateur que j'utilise est celui qui est le plus répandu: je suis (du verbe suivre et pas être) la majorité.

Très peu de chances en conclusion que je me prenne pour un mal-aimé. A moins que l'on estime que justement c'est la plate-forme en question qui est minoritaire et qui contient à elles seule tous les frustrés mal aimés (le cliché est joli en tous cas). Bof: + 45% depuis l'année dernière et même les gars de chez Microsoft blogguent en disant qu'OS X.4 explose les prévisions de Longhorn. Alors tu sais, le mal-aimé .... :rolleyes:

Au fait, raté pour Firefox, je ne me sers de ce navigateur qu'à des fins de tests.

Voilà pour l'épisode du mal-aimé.

Ensuite la discrimination: m'aurais-tu mal compris ? :whistling: Tu as demandé clairement à ce qu'on corrige un code javascript soi-disant javascript qui en fait se révèle être une variante propriétaire de ce langage. Lorsque tu obtiens pour réponse que ces pratiques ne sont pas conformes aux standards, tu as clairement dit que tu visais les utilisateurs d'Internet Explorer uniquement, et puis les autres -> petit texte explicatif. C'est çà que je trouve discriminatoire. Peut-être est-ce un bien grand mot (çà l'est un peu j'avoue). Mais pourquoi donc focaliser son énergie à corriger du code d'un langage qui n'existe pas (qui éventuellement, oui, ressemble à du javascript) ? Alors qu'il reste tellement d'efforts à fournir pour l'accessibilité de l'Internet ? et pour les formats ouverts qui facilitent les échanges d'informations ? (on m'avait dit qu'Internet était un médium destiné aux échanges d'informations, on m'aurait menti ?).

Et qui plus est, le code incorrect vient em... enquiquiner l'utilisateur en décidant à sa place du contenu du Presse-Papiers ? Ce qui est anti-ergonomique par définition (tiens j'ai mis un texte dans mon clipboard, je me retrouve avec un autre ah ben oui c'est normal j'ai surfé sur un site :blink:) et qui AMHA peut vite se transformer en faille (çà + un bon buffer overflow des familles + un petit soupçon de je-ne-sais-quoi, çà peut faire un joli hack avec prise de contrôle à distance) ?

Non désolé, rien que l'idée est horripilante :huh: je m'arrête ici, çà me désole de voir ce genre de choses :(

Dès qu'un programmeur de javascript réellement compétent aura rectifié mon code, j'en ferai le compte-rendu ici pour information...
Vu qu'AUCUN code javascript n'a accès au Presse-Papiers, je pense que le programmeur réellement compétent risque de rectifier ton code un peu plus que tu ne le prévois. D'ailleurs je me demande pourquoi aucun programmeur réellement compétent n'est pas encore passé sur ce topic ? Il n'y a que des gens qui ne sont pas réellement compétents sur le forum webmaster-hub ? Où sont les programmeurs réellement compétents alors ? :)

PS: juste une question qui me travaille depuis que je lis ce topic: c'est compliqué pour l'utilisateur de faire un copier-coller ? :huh: Tout cela me rappelle furieusement des débats passionés sur du code proprio utilisé pour ajouter le site en favoris.

PPS: récemment, dans un autre topic, on discutait d'une notion importante: http://fr.wikipedia.org/wiki/Interopérabilité

PPPS: après "sorcier glouton" que diriez vous d'un concours "programmeur réellement compétent" ^_^ ?

PPPPS; je n'aime pas les PS :ph34r:

Modifié par Dudu
Lien vers le commentaire
Partager sur d’autres sites

  • 2 semaines plus tard...

Bonjour, Dudu le bien-aimé...

J'ai vu sur le site www.cjoint.com que le contenu du lien créé par le dit site est collé automatiquement dans le presse-papier... Il me semble que c'est du javascript... A moins que ce ne soit un "semblant" de javascript...? Ou un ersatz non autorisé? En tout état de cause, n'étant pas intégriste, c'est de cette idée-là que je souhaitais m'inspirer. J'étais sans doute naïf de croire que sur un forum d'entraide on aurait pu m'aider en ce sens.

Vu le peu d'enthousiasme suscité par mon problème (toutes les raisons avancées pour ne pas le solutionner ayant force de loi), j'ai renoncé pour l'instant à appliquer cette idée. Eh oui, n'étant pas programmeur en javascript et ne disposant pas du temps pour m'investir dans un langage dont je n'ai l'utilité que pour une seule page d'un site web que je prépare, mon pragmatisme naturel m'incite à faire l'impasse sur ce "détail" qui n'est tout compte fait qu'une "décoration" dans mon projet... Je ne vais pas continuer de m'occuper du chapeau de la gamine mais plutôt de faire avancer ma voiture...

Bises,

Jean-Luc Ernst,

programmeur incompétent

PS : J'ai bien aimé ta prose, notamment celle concernant la position du missionnaire... ("...il reste tellement d'efforts à fournir pour l'accessibilité de l'Internet...", etc).

Lien vers le commentaire
Partager sur d’autres sites

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...