Partage
  • Partager sur Facebook
  • Partager sur Twitter

Atteindre l'attribut target d'un élément <form>

upload avec les iFrames (ajax)

Sujet résolu
    4 novembre 2008 à 19:05:36

    Bonjour, ;)

    est il possible d'atteindre l'attribut "target" d'un élément <form>?

    Je suis en train de m'essayer à l'upload en ajax (est-ce vraiment de l'ajax) selon le dit-tuto...

    J'aimerais éviter d'handicaper les gens ayant désactivé JS. Pour moi (et le reste de mon site) un problème se pose:
    je pose mon code php d'upload dans upload.php.
    Cette page contient le code d'upload, et aussi un bout de code javascript qui appelle une fonction dans la page mère pour y afficher le status de l'upload (en cours, chargé), et affiche les fichiers déjà chargés. Si l'utilisateur a désactivé JS, cette page php contient aussi un affichage basique en HTML qui présente un petit message cordial.

    Ainsi, si JS est activé, le fichier est chargé dans une iFrame avec visibility="hidden". Ainsi, les messages php ne sont pas montrés dans l'iFrame, même s'ils sont en fait exécutés.

    Si JS est désactivé, je voudrais que la page mère (qui présente le formulaire) en charge pas upload.php dans l'iframe, mais dans la page mère.

    Pour cela, j'ai pensé à quelque chose de simple: par défaut, le target de <form> est sur "self". Ensuite, à l'éxécution de la page mère, un script JS en début de page modifie ce "self" en "id_de_mon_iFrame".

    J'ai fais mes tests, mais échec... j'ai tenté ça: document.getElementById("idFormulaire").target ="id_de_mon_iFrame" ; :-°

    Voilà voilà, et merci d'avance! :)

    A+
    • Partager sur Facebook
    • Partager sur Twitter
      4 novembre 2008 à 19:16:52

      Il te suffit d'utiliser la fonction générique pour récupérer un attribut : getAttribute()
      var target = form.getAttribute('target');
      


      Testé avec ce bout de code :
      <script language="javascript">
      	function test(form){
      		alert(form.getAttribute('target'));
      		return false;
      	}
      </script>
      
      <form method="post" action="#" onSubmit="return test(this);" target="blank">
      	<input type="submit" value="test" />
      </form>
      
      • Partager sur Facebook
      • Partager sur Twitter
        4 novembre 2008 à 19:34:42

        ooof! parfait tout roule!

        décidément, il me reste des choses à apprendre en js! j'y crois pas d'avoir essayé ce que j'ai essayé! Voué au message d'erreur!

        Merci mille fois!
        • Partager sur Facebook
        • Partager sur Twitter

        Atteindre l'attribut target d'un élément <form>

        × 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