peut-on faire appel a du javascript dans le href de la balise <A>? - HTML/CSS - Programmation
Marsh Posté le 11-02-2012 à 16:43:29
Pour répondre à la question du titre : oui.
Voici comment : http://jsfiddle.net/gBARm/
En revanche pour ce que tu veux faire il faudrait mieux un même fichier html avec un script faisant un document.write.
Ce serait plus simple en utilisant un framework type jQuery.
Marsh Posté le 14-02-2012 à 13:35:18
merci dagum
alors avant que tu me repondes, j'ai fait ce fichier html que j'ai donc mis à la place de A avec des paramètres dans l'url de A pour que ca puisse suivre, bien:
en cliquant sur le le lien j'ai bien comme attendu le iframe name millieu qui se rempli de l'execution de A.html?...
dans cette facon de faire je me heurte a une nouvelle difficulté:
A.html est sur le schéma suivant:
pour j allant de 0 à n on fait
si j = paramètre_toto alors on fait traitement1
sinon on fait traitement2
traitement 1 est le cas qui a marché seul avec son affichage dans l'iframe nom_millieu
la difficulté qui se presente est que je voudrais envoyer l'affichage de traitement2 ailleurs dans la page d'appel (dans une div disont id=contenu_droit avec ou sans iframe à l'interrieur)
je crois que l'utilisation de l'iframe dans contenu_fiche et l'appel a A.html m'oblige a faire un quasi clone de A.html (A'.html) pour gèrer le traitement 2 dans contenu droit, tu m'arretes si je dis des betises
j'ai aussi essayé dans A.html de placer le traitement 2 dans une div à part genre div id=tmp et d'utiliser dans le code de départ un getLayerContent("tmp" ) dans l'idée de récupérer l'affichage l'envoyer dans contenu_droit avec writeLayer et d'effacer cette div tmp , mais a ce niveau il la connait pas cette div on dirait (il a l'aire de connaitre que l'iframe)
j'ai aussi essayé de déclarer une variable genre TMPDROIT et dans A.html d'affecter une chaine de carateres au format html du traitement 2, ca pas l'air de marcher non plus
je me disais que peut-etre je peut fabriquer un fichier texte temporaire dans traitement 2 et l'appeller ensuite dans la div contenu-droit
mais je sais pas trop comment m'y prendre pour créer ce fichier
sinon j'ai aussi lu qu'on pourrait ecrire un truc du genre
<a href="javascript:edit_fich(toto,..)">....
mais ca marche pas non plus et j'ai pas d'idée qui pourrait expliquer que ca marcherait chez d'autres et pas chez moi
apres je veux bien utiliser du jQuery mais quel serait le schéma que je dois etudier pour le mettre en oeuvre par du jQuery?
en tout cas je continue de chercher, merci à toi de m'avoir répondu
Marsh Posté le 14-02-2012 à 14:42:36
pour ce qui est du lien et de l'appel a edit_fich par javascript
est ce qu'une explication pourrait etre liée au positionnement du code de la fonction doit elle etre obligatoirement etre dans le head?
dans la chaine qui y fait appel, j'ai ca:
chaine= " .... <a href='javascript:edit_fich(" + param_toto + ",1)' target='millieu'>fiche</a>";
tu vois rien en ca qui est un problème?
parce qu'en effet tous les exemples comme ton lien faisait appel a des fonctions javascript (un exemple me donnait la syntaxe pour une fonction ecrite mais y avait pas d'argument variable)
j'ai aussi lu que href impose des guillemets mais si j'inverse ' et " ca change rien
Marsh Posté le 10-02-2012 à 13:24:14
Bonjour tout le monde
j'ai plus les idées bien claires sur mon projet, aussi je viens vous demander confirmation
voila mon soucis
d'abord un schéma de code html
<a href="A" target="milieu"> fiche </a>
...
<div id="contenu_fiche">
<iframe name="milieu" src="B"></iframe>
</div>
il me semble donc que A et B sont des fichiers
maintenant j'ai pour mes besoins un script javascript qui contient une fonction fiche
qui crèe une chaine de caractère qui reprèsente un bout de html qui contient le schéma ci-dessus
je voudrais que A et B correspondent au resultat d'une unique fonction
edit_fich paramètrée dans ce même script
est ce que syntaxiquement je peux remplacer A et B par edit_fich qch?
si oui que doit renvoyer ou faire la fonction edit_fich?
Par avance merci à vous de confirmer ou d'infirmer que je peux faire ce que je viens d'exposer