Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1382 connectés 

  FORUM HardWare.fr
  Programmation
  HTML/CSS

  comment inserer du code html avec javascript ?

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

comment inserer du code html avec javascript ?

n°1354984
pactole@
Posté le 27-04-2006 à 11:22:44  profilanswer
 

Salut,
 
je voudrais faire la même chose que le systeme de pieces jointes de gmail.
On peut ajouter des champs des saisies de fichier en cliquant sur joindre, sans que ça recharge la page.
Le chargement de tous les fichiers se fait au submit.
 
Je suis assez débutant en javascript, donc peut être pourriez vous m'orienter.
merci  :hello:

mood
Publicité
Posté le 27-04-2006 à 11:22:44  profilanswer
 

n°1355016
Bidem
Posté le 27-04-2006 à 11:52:11  profilanswer
 

Gmail utilise une "techno" appelée Ajax. Cf. Ajax sur google

n°1355039
anapajari
s/travail/glanding on hfr/gs;
Posté le 27-04-2006 à 12:14:38  profilanswer
 

Bidem a écrit :

Gmail utilise une "techno" appelée Ajax. Cf. Ajax sur google


 :fou: mais c'est pas ça de l'ajax didjouuuu  :fou:  
l'ajout des inputs files se fait purement en javascript et je pencherais fortement pour du DOM...
 
edit: un truc dans le genre

Code :
  1. ...
  2. function addInput(){
  3. var fileNode = document.createElement('input');
  4. fileNode.setAttribute('type', 'file');
  5. fileNode.setAttribute('name', 'fichier[]');
  6. document.getElementById('files').appendChild(fileNode);
  7. }
  8. ...
  9. <body>
  10. ...
  11. <div id="files"/>
  12. ...
  13. </body>


Message édité par anapajari le 27-04-2006 à 12:17:14
n°1355117
gooopil
pfiew
Posté le 27-04-2006 à 13:59:58  profilanswer
 

L'ajout des inputs oui c'est probablement du DOM, mais les fonctionalités de gmail, ben c'est à base d'ajax... http://www.adaptivepath.com/public [...] 000385.php

n°1355157
anapajari
s/travail/glanding on hfr/gs;
Posté le 27-04-2006 à 14:31:10  profilanswer
 

gooopil a écrit :

L'ajout des inputs oui c'est probablement du DOM, mais les fonctionalités de gmail, ben c'est à base d'ajax... http://www.adaptivepath.com/public [...] 000385.php


Je n'ai pas dit que gmail n'utilisait pas d'ajax mais que pour faire ce qui était demandé il n'y avait rien d'ajaxien la dedans.
D'ailleurs, à partir du moment où tu as des inputs file tu ne peux plus te servir d'ajax: il est impossible d'envoyer un fichier via xmlHttpRequest ( ou son equivalent IE).
 
Ce qui m'énerve ce que maintenant dès qu'une question, relative à du js est posée, il y a forcément une réponse: "c'est en ajax..." alors que non!!! Comme l'explique si bien ton article:

Citation :

Ajax incorporates:
   

  • standards-based presentation using XHTML and CSS;

   

  • dynamic display and interaction using the Document Object Model;

   

  • data interchange and manipulation using XML and XSLT;

   

  • asynchronous data retrieval using XMLHttpRequest;

   

  • and JavaScript binding everything together.



99% des fois il y a à peine le dernier point ...
 
Du coup:
http://img230.imageshack.us/img230/1507/buzzworld5ie.jpg

n°1355159
pactole@
Posté le 27-04-2006 à 14:31:36  profilanswer
 

ok merci :)
 
euh 'files' et 'fichier[]' c'est des arguments qui viennent d'ou ?
du form ?
 
 
oh non pas le magic  :fou:  
 
 :lol:  
 
 
Sinon en dehors d'un document.createElement on peut pas inserer nimporte quel bout de code html ?


Message édité par pactole@ le 27-04-2006 à 14:33:50
n°1355165
gooopil
pfiew
Posté le 27-04-2006 à 14:37:35  profilanswer
 

anapajari a écrit :

Je n'ai pas dit que gmail n'utilisait pas d'ajax mais que pour faire ce qui était demandé il n'y avait rien d'ajaxien la dedans.
D'ailleurs, à partir du moment où tu as des inputs file tu ne peux plus te servir d'ajax: il est impossible d'envoyer un fichier via xmlHttpRequest ( ou son equivalent IE).
 
Ce qui m'énerve ce que maintenant dès qu'une question, relative à du js est posée, il y a forcément une réponse: "c'est en ajax..." alors que non!!!  ...


 
Je suis entièrement d'accord, je ne voulais pas dire que tu disais qu'il y a avait pas d'ajax chez gmail :) Ca se voulait juste être une précision  :jap:
 
Edit: Lol la carte magic :D


Message édité par gooopil le 27-04-2006 à 14:38:06
n°1355168
pactole@
Posté le 27-04-2006 à 14:39:52  profilanswer
 

et sinon pour supprimer des champs c'est plus chaud non ? :whistle:

n°1355171
anapajari
s/travail/glanding on hfr/gs;
Posté le 27-04-2006 à 14:41:35  profilanswer
 

removeNode au lieu de appendChild

n°1355174
pactole@
Posté le 27-04-2006 à 14:45:21  profilanswer
 

y a pas besoin de gérer des indexs ?

mood
Publicité
Posté le 27-04-2006 à 14:45:21  profilanswer
 

n°1355199
anapajari
s/travail/glanding on hfr/gs;
Posté le 27-04-2006 à 14:59:11  profilanswer
 

quels indexs???

n°1355213
pactole@
Posté le 27-04-2006 à 15:10:30  profilanswer
 

pour la suppression du bon champ d'upload.
Comme sur gmail.
 
Juste que je vois pas comment le lien supprimer peut savoir lequel il doit supprimer.
 
A la création du lien de suppresion peut être peut on passer un identifiant du node ?


Message édité par pactole@ le 27-04-2006 à 15:13:21
n°1355234
anapajari
s/travail/glanding on hfr/gs;
Posté le 27-04-2006 à 15:30:15  profilanswer
 

bon déjà m'étais planter c'est removeChild et non removeNode...
 
Bref tu fais un truc dans le genre:

Code :
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
  2.   "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
  3. <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" >
  4. <head>
  5.   <meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
  6.   <title>Test</title>
  7.   <script type="text/javascript">
  8.   function removeFileNode( node){
  9. document.getElementById('files').removeChild(node.parentNode);
  10.   }
  11.   function addFile(){
  12. var divNode = document.createElement('div');
  13. var fileNode = document.createElement('input');
  14. fileNode.setAttribute('type', 'file');
  15. fileNode.setAttribute('name', 'fichier[]');
  16. divNode.appendChild(fileNode);
  17. var lkRmvNode = document.createElement('input');
  18. lkRmvNode.setAttribute('type', 'button');
  19. lkRmvNode.setAttribute('value', 'supprimer');
  20. lkRmvNode.onclick = function(event){ removeFileNode(this);}
  21. divNode.appendChild(lkRmvNode);
  22. document.getElementById('files').appendChild(divNode);
  23.   }
  24.   </script>
  25. </head>
  26. <body >
  27. <input type="button" onclick="addFile()" value="Ajouter"/>
  28. <div id="files"></div>
  29. </body>
  30. </html>


Message édité par anapajari le 27-04-2006 à 15:30:54
n°1355241
pactole@
Posté le 27-04-2006 à 15:39:52  profilanswer
 

@anapajari
merci beaucoup :jap:

n°1355297
pactole@
Posté le 27-04-2006 à 16:26:34  profilanswer
 

et merde y a un blem au niveau de la convertion de type du form avec struts :/

n°1355383
pactole@
Posté le 27-04-2006 à 17:55:20  profilanswer
 

bon avec la classe FileUpload c'est réglé :D

n°1373636
malzed
Posté le 23-05-2006 à 22:22:13  profilanswer
 

bah si, il y a de l'ajax ... dans gmail à ce niveau là !
dès qu'on a saisie un input, il l'upload via xmlhttprequest ...
c'est assez flagrant, surtout quand on redige un long email en texte, à la fin on se rends compte que toutes les pj ont été submité ... sans avoir encore posté la form ;-)
 
(pour fred : malzed = manatlan ... c kif kif)


Message édité par malzed le 23-05-2006 à 22:22:44

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  HTML/CSS

  comment inserer du code html avec javascript ?

 

Sujets relatifs
HTML <div> flottantTomcat et internationalisation de fichiers html
possibilitée du javascript???besoin d'aide pour naviguation dans page HTML
Balise div dans le code .NETPassage du HTML au XHTML / CSS, quelque petits soucis...
[RESOLUE] Quelqu'un s'y connait il un peu en tableau HTML ? MerciSupprimer barre de défilement en HTML
bandeau defilant en javascript[newbie] inserer un code javascript dans du html
Plus de sujets relatifs à : comment inserer du code html avec javascript ?


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR