Partage
  • Partager sur Facebook
  • Partager sur Twitter

Copier un champs input dans une popUp

Comment copier un inputFile dans une popUp ?

    8 juin 2010 à 17:08:49

    NOUVEAU !

    Démo disponible ici : http://membres.multimania.fr/delabouzouque/popUp

    => Marche nikel sous firefox mais pas sous IE, mais pourquoi ! :)

    Bonjour à tous !

    Je suis actuellement en train de créer un système d'upload avec une jauge et j'ai un gros problème avec IE !
    Je vous explique mon problème :

    J'ai 2 pages, une page "index" et une page "popUp", vous l'aurez compris, la page "index" ouvrira la page popUp.
    Bon, jusque là rien de compliqué^^

    Ma page "Index" contient un champs de type inputFile, et je voudrais cloner/copier ce champs dans ma popup qui c'est ouverte.

    Donc pour celà, rien de plus simple !

    Dans mon "index" je met un input avec un id = 'fileToUpload' et ensuite en javascript dans ma page popUp je fais :

    <function init_file_input() {
    	
    // Je recupere l'input de mon fichier "index"
    var Mon_Input_Source = opener.document.getElementById('fileToUpload');
    
    
    // Je le copie dans ma page "popup"
    document.getElementById('emplacement').update(Mon_Input_Source); // J'ai créé un <div id = 'emplacement'> </div> dans ma page bien entendu
    



    Alors maintenant le problème ! ^^

    ça marche sous firefox, mais sous IE ça ne marche pas !
    (message erreur debugeur : "Erreur : Cette interface n'est pas prise en charge")

    Alors j'ai tout testé, le element.insert, element.replace, de faire un element.clone() aussi, mais rien y fait, toujours la même erreur sous IE,
    sous firefox toute les possibilités marchent^^
    Alors si quelqu'un pourrait m'aider ou a une explication, je lui serais GRANDEMENT reconnaissant !^^


    Merci d'avance en tout cas !
    Samuel

    (Au niveau de prototype c'est cette fonction qui est appelé :
    bottom: function(element, node) {
    element.appendChild(node);
    }

    • Partager sur Facebook
    • Partager sur Twitter
      8 juin 2010 à 18:05:43

      Tu veux vraiment cloner l'input ? Ou juste récupérer sa valeur pour la mettre dans un autre ?

      Si tu fais ça, ça marche ? :

      document.getElementById("autre inputfile").value=opener.document.getElementById("fileToUpload").value;
      


      en créant bien sûr l'input dans ta popup, et en mettant son id à la place de "autre inputfile".
      • Partager sur Facebook
      • Partager sur Twitter
      Directeur technique, créateur de jeux HTML5 et fan de JavaScript | La suite de OnHack est sur les rails !
        8 juin 2010 à 18:08:12

        Et bien je veux absolument le cloner, car il s'agit d'un inputFile, et il n'est pas possible d'assigner une valeur à ce genre de champs, seulement les lire, d'où la necessité de le cloner.

        L'élement cloné s'affiche sans problème si je travail sur une seul page, mais dés que je veux l'afficher dans la popUp, là ça ne marche déjà plus sous IE, et je ne sais vraiment pas pourquoi ... (peut-être est ce une protection supplementaire de IE ? )

        (dans la popUp ensuite je fais un post, d'où la necessité du clonage vu que je neu peux preremplir le champ InputFile)

        Merci quand même de ta réponse :)
        • Partager sur Facebook
        • Partager sur Twitter
          10 juin 2010 à 11:00:40

          Bon ba j'en conclu donc que c'est impossible de faire ça avec IE ... sans doute a t-il une sécurité qui m'empêche de cloner un input dans une fenêtre ... C'est dommage mais si c'est comme ça, ba je peux rien y faire alors ^^:p

          Merci pour vos réponse en tout cas ! :)
          J'aurai au moins posté une belle colle ;)

          • Partager sur Facebook
          • Partager sur Twitter

          Copier un champs input dans une popUp

          × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
          × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
          • Editeur
          • Markdown