gontran Posté 5 Septembre 2006 Posté 5 Septembre 2006 Bonjour le Hub, Je rencontre un probleme pour récuperer un <select> en javascript je m'explique... Je voudrais ajouter un bouton de previsualisaation d'un message... pour ce faire je pense que le mieux est d'utiliser javscript... je ne rencontre pas de souci pour recuperer les valeurs de mes <input> mais pas moyen de récuperer la valeur d'un <select> function affichage() { FenetreAffichage = window.open('Visu','NouvelleFenetre', 'toolbar=no,status=no,width=300,height=200') FenetreAffichage.document.write("Visualisation de votre article"); FenetreAffichage.document.write("<br><br><b>Categorie : </b>" + this.cat.options.selectedIndex.value); FenetreAffichage.document.write("<br><b>Titre : </b>" + document.article.titre.value); FenetreAffichage.document.write("<br><b>Sous titre : </b>" + document.article.ss_titre.value); FenetreAffichage.document.write("<br><b>Article : </b>" + document.corps.value); FenetreAffichage.document.write("<br>");} ca fais un bon paquet de temps que je cherche et je ne trouve pas... Merci
Bourinho Posté 5 Septembre 2006 Posté 5 Septembre 2006 Salut, si tu appelles sel l'élément correspondant à ton "select", sel = document.getElementById('LeBonId'); il suffit d'ecrire ce qui suit: LaSelection=sel.options[sel.selectedIndex].value; Normalement, c'est OK... En espérant que cela fonctionne!
gontran Posté 5 Septembre 2006 Auteur Posté 5 Septembre 2006 alors j'ai fait ca function affichage() { FenetreAffichage = window.open('','NouvelleFenetre', 'toolbar=no,status=no,width=300,height=200') cat=document.getElementById('cat'); categorie=cat.options[cat.selectedIndex].value; FenetreAffichage.document.write("Visualisation de votre article"); FenetreAffichage.document.write("<br><br><b>Categorie : </b>" + categorie); FenetreAffichage.document.write("<br><b>Titre : </b>" + document.article.titre.value); FenetreAffichage.document.write("<br><b>Sous titre : </b>" + document.article.ss_titre.value); FenetreAffichage.document.write("<br><b>Article : </b>" + document.corps.value); FenetreAffichage.document.write("<br>");} maius ca ne marche pas....
Bourinho Posté 5 Septembre 2006 Posté 5 Septembre 2006 Salut, Si tu n'ecris pour l'instant que : function affichage() { FenetreAffichage = window.open('','NouvelleFenetre', 'toolbar=no,status=no,width=300,height=200') cat=document.getElementById('cat'); categorie=cat.options[cat.selectedIndex].value; FenetreAffichage.document.write("Visualisation de votre article"); FenetreAffichage.document.write("<br><br><b>Categorie : </b>" + categorie);} Cela fonctionne? Essaie de trouver plus précisément quelle ligne fait vraiment bugger ton script...ça sera plus simple pour ceux qui veulent t'aider! Pour cela, ajoute les lignes les unes après les autres pour savoir laquelle fait vraiment défaut...
gontran Posté 5 Septembre 2006 Auteur Posté 5 Septembre 2006 j'ai tester, c'est quand je rajoute la recuperation du select que ca bug... je cherche un peu partout mais je ne trouve pas la solution...
Bourinho Posté 5 Septembre 2006 Posté 5 Septembre 2006 Salut, Tu pourrais me montrer comment tu as écrit ton select dans ce fichier??? Ca doit être un truc du genre : <label>Catégorie<select name='cat' id='cat' ><option value=1>cat1</option><option value=2>cat2</option><option value=3>cat3</option></select></label> Faut bien mettre l'id dans la balise select. Et il faut que ce soit le seul élément dont l'id soit 'cat'...
gontran Posté 5 Septembre 2006 Auteur Posté 5 Septembre 2006 arf... c'est peut etre ca alors je n'ai pas mis d'id sur mon select... je fais un test et je reviens vers toi merci ok c'est bon ca fonctionne... merci et désoler de t'avoir fais perdre ton temps... encore merci
gontran Posté 5 Septembre 2006 Auteur Posté 5 Septembre 2006 j'ai vu que tu avais mis un post poour l'attribut 'escape'... je cherche a faire a peu pres la meme chose mais en recuperant la mise en forme du texte, c'est a dire les caractere en gras, les souligné, les liens, etc... est-ce que tu saius comment on peut faire ca ??
Bourinho Posté 5 Septembre 2006 Posté 5 Septembre 2006 (modifié) Salut merci et désoler de t'avoir fais perdre ton temps... C'est un peu le principe d'un forum... Je perds un peu de temps mais j'en gagne énormément de l'autre côté... et puis des erreurs de ce type, t'es pas le premier à en faire (j'en ai fait pas mal avant toi ) C'est de l'Ajax que tu veux faire??? parce que j'utilise escape pour mettre des variables dans l'URL dans ce but... Modifié 5 Septembre 2006 par Bourinho
gontran Posté 5 Septembre 2006 Auteur Posté 5 Septembre 2006 de l'ajax, non je ne crois pas, je veux juste récuperer les balises '<b>...</b>', <p>...</p> pour que dans la preview du message tout soit bien mis en forme... alors si il faut passer par de l'ajax je ne suis pas contre, mais comme précédement dit, je cherche partout et je ne trouve pas la fonction qui permette de faire ca....
Bourinho Posté 5 Septembre 2006 Posté 5 Septembre 2006 Re... Tu veux les mettre en GET ces variables qui contiennent les balises <b>, <p> et j'en passe??? Si c'est le cas, tu n'as qu'à utiliser "escape" (en javascript) pour mettre ta variable dans l'URL et "urldecode" (en php) dans la page qui suit... c'est marrant, y a un topic en parallèle qui parle du même sujet...enfin je crois, sauf si je suis à côté de la plaque! A+
gontran Posté 5 Septembre 2006 Auteur Posté 5 Septembre 2006 euh non je veux les mettre en 'post' car je risque d'avoir des textes assez long et donc de les faire passer par l'URL ca ne va pas aller...
Bourinho Posté 5 Septembre 2006 Posté 5 Septembre 2006 (modifié) Je ne suis pas sur de ce que je vais te dire...donc, il te faudra attendre l'avis de personnes plus expertes que moi... Mais, d'après moi, il faut passer par un formulaire pour passer des variables en POST... (j'en suis quasiment sur!) Il faudrait que t'arrives à mettre ta page sous forme d'un formulaire...le seul problème que tu peux rencontrer, c'est la nécessité d'avoir un bouton de type 'submit'... car pour le reste, tu peux passer ces variables en dans des champs placés en 'hidden' via javascript... Mais, comme je viens de te le dire, attend la validation d'une personne plus qualifiée que moi (la date à laquelle je me suis inscrit (écrite juste à gauche) correspond au début de mon intérêt pour le développement de site web... alors j'ai pas encore beaucoup de recul ) A+ Modifié 5 Septembre 2006 par Bourinho
gontran Posté 5 Septembre 2006 Auteur Posté 5 Septembre 2006 et bien je suis a peu pres comme toi, ca fait peu de temps que je me suis mis au web. pour repondre a ta question je suis deja dans un formulaire, mais j'arrive tout de meme pas a recuperer les balises de mise en forme... mais comme j'aime pas laisser tomber je vais chercher et je vais trouver... merci
Bourinho Posté 5 Septembre 2006 Posté 5 Septembre 2006 (modifié) OK...je crois avoir compris ton problème!!! Ces balises (comme <b>, <p> etc...) sont visiblement interprétées!!! Il faut remplacer les < et les > par leur équivalent en HTML que tu peux trouver ici : le lien Remplace ainsi tous les caractères que tu rencontres dans ce tableau par ce qui est appelé le "code texte"...et ça devrait fonctionner!!! En php, au lieu d'afficher directement $Chaine , affiche htmlentities($Chaine,ENT_QUOTES) Ca fait exactement ce que je viens de te décrire! Modifié 5 Septembre 2006 par Bourinho
gontran Posté 5 Septembre 2006 Auteur Posté 5 Septembre 2006 le probleme est que ma preview ce fais dans un fichier '.js' et donc pas moyen de mettre du php dedans....
Bourinho Posté 6 Septembre 2006 Posté 6 Septembre 2006 Salut, Je donnais mon exemple en PHP parce que c'est le langage que j'utilise le plus... Je pense qu'il existe aussi une fonction htmlentities en javascript... mais je n'ai jamais eu a l'utiliser... peut etre a creuser... A+
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant