IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

pb avec un 'this.form.submit();'


Sujet :

JavaScript

  1. #1
    Membre régulier
    Inscrit en
    Juin 2005
    Messages
    243
    Détails du profil
    Informations forums :
    Inscription : Juin 2005
    Messages : 243
    Points : 89
    Points
    89
    Par défaut pb avec un 'this.form.submit();'
    Bonsoir tout le monde !!

    Voilà, j'aimerai griser un bouton submit lorsque l'on clic dessus et envoyer le formulaire associé. Suite à des recherches sur le net j'ai trouvé le code suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    <INPUT TYPE='SUBMIT'
    NAME='uploadForm' VALUE="Publier la note" onclick="this.form.submit();this.disabled=true;this.value='En cours'">
    J'ai essayé donc comme cela, mais aussi avec document.nomDuFormulaire.submit();

    Mais quand je clic sur le bouton, il se grise bien mais le formulaire n'est guerre envoyé et j'ai le message "Cet objet ne gère pas cette propriété ou cette méthode".

    C'est fou ça quand même... Quelqu'un voit t'il d'où cela peut venir ??

    D'avance un énorme merci et très bonne fin de week end !!

  2. #2
    Modérateur
    Avatar de Bisûnûrs
    Profil pro
    Développeur Web
    Inscrit en
    Janvier 2004
    Messages
    9 893
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Janvier 2004
    Messages : 9 893
    Points : 16 347
    Points
    16 347
    Par défaut
    "this.form.submit();"

    Ca paraît inutile de préciser que tu veux envoyer le formulaire alors que tu as un bouton de type submit.

    Tu peux faire comme ça :


    Code Javascript : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    function envoiForm(bouton){
       form = bouton.form;
       bouton.value = "En cours";
       bouton.disabled = true;
       form.submit();
    }

    Code HTML : Sélectionner tout - Visualiser dans une fenêtre à part
    <input type="button" name="uploadForm" value="Publier la note" onclick="envoiForm(this);" />

  3. #3
    Membre régulier
    Inscrit en
    Juin 2005
    Messages
    243
    Détails du profil
    Informations forums :
    Inscription : Juin 2005
    Messages : 243
    Points : 89
    Points
    89
    Par défaut
    Salut et merci beaucoup d'avoir répondu !

    Donc j'ai fait ce que tu préconises, le formulaire est bien envoyé mais le bouton n'est pas grisé et n'a pas changé de nom...

    Quand je mets juste onload="this.form.submit();", le formulaire est bien envoyé mais si je mets onload="this.disabled=true;this.form.submit()" là le bouton se grise mais le formulaire ne s'envoi pas (j'ai le message d'erreur dit plus haut).

    Enfin, quand je fais un alert(this.form.name) j'ai bien le nom de mon formulaire.

    C'est bizare tout ça quand même...

  4. #4
    Modérateur
    Avatar de Bisûnûrs
    Profil pro
    Développeur Web
    Inscrit en
    Janvier 2004
    Messages
    9 893
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Janvier 2004
    Messages : 9 893
    Points : 16 347
    Points
    16 347
    Par défaut
    Heu, mais quand tu dis que tu veux que le bouton soit grisé, c'est après rechargement de la page ?

    Parce que dans ce cas le code que je t'ai donné ne fonctionne qu'avant le rechargement de la page et le bouton recouvre ses valeurs d'origine une fois la page rechargée ...

  5. #5
    Membre régulier
    Inscrit en
    Juin 2005
    Messages
    243
    Détails du profil
    Informations forums :
    Inscription : Juin 2005
    Messages : 243
    Points : 89
    Points
    89
    Par défaut
    Non non, c'est bien ça, je veux que le bouton se grise puis envoi le formulaire. Mais hélas ça ne marche pas et je vois vraiment pas pourquoi...

  6. #6
    Membre régulier
    Inscrit en
    Juin 2005
    Messages
    243
    Détails du profil
    Informations forums :
    Inscription : Juin 2005
    Messages : 243
    Points : 89
    Points
    89
    Par défaut
    Voilà... ça marche enfin !! En faite, c'est parce que j'avais un autre bouton dont le nom était "submit" du coup ça faisait un conflit ou un truc dans le genre.

    Bref, me voilà tout soulagé !

    Merci encore !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. this.form retourne undefined avec <a>
    Par Tchupacabra dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 11/03/2007, 09h51
  2. Comment ça marche this.form.submit() ?
    Par iro2 dans le forum Général JavaScript
    Réponses: 8
    Dernier message: 08/03/2006, 11h36
  3. this.form.submit ne marche pas ... et pourtant
    Par misarod dans le forum Balisage (X)HTML et validation W3C
    Réponses: 3
    Dernier message: 21/12/2005, 17h40
  4. onChange="this.form.submit();" marche pas sous IE
    Par Death83 dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 25/09/2005, 11h05
  5. pb de fonction simple (this.form.submit()..)
    Par petitsims dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 14/01/2005, 09h29

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo