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

ASP.NET Discussion :

getElementById avec une master page


Sujet :

ASP.NET

  1. #1
    Membre chevronné
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Octobre 2008
    Messages
    380
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2008
    Messages : 380
    Par défaut getElementById avec une master page
    Bonjour,

    J'utilise le javascript pour simuler le clic sur un bouton,
    J'ai donc dans mon fichier aspx:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    window.document.getElementById('monBouton').click();
    Le problème est que l'identifiant de mon bouton change à l'exécution, il est préfixé par plusieurs choses, notamment le ContentPlaceHolderID du content de ma master page.

    Du coup impossible d'accéder à mon bouton, auriez-vous une piste/idée?

    Merci d'avance.

  2. #2
    Rédacteur
    Avatar de lutecefalco
    Profil pro
    zadzdzddzdzd
    Inscrit en
    Juillet 2005
    Messages
    5 052
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : zadzdzddzdzd

    Informations forums :
    Inscription : Juillet 2005
    Messages : 5 052
    Par défaut
    Problème classique traité des milliers de fois

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    window.document.getElementById('<%= monBouton.ClientID %>').click();

  3. #3
    Membre Expert Avatar de Arthis
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    1 265
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : Italie

    Informations forums :
    Inscription : Octobre 2003
    Messages : 1 265
    Par défaut
    regardes du coté du clientId de ton bouton.


    [Edit] Arf! Grillé! [/Edit]

  4. #4
    Membre chevronné
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Octobre 2008
    Messages
    380
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2008
    Messages : 380
    Par défaut
    Merci,

    Désolé j'ai du rater les posts où le sujet est traité.

    En fait, les problèmes continuent, je pensais qu'en utilisant la méthode:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    window.document.getElementById('<%= monBouton.ClientID %>').click();
    J'appelerais la méthode défini par le 'OnClick' (méthode défini dans le fichier aspx.cs):
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <asp:Button ID="monBouton" runat="server" OnClick="monBouton_Click" Text="Rechercher" />
    En fait, je n'y arrive pas, je passe uniquement dans le Page_Load avec IsPostBack=true.

    Je m'inspire d'un exemple, qui fonctionne comme ça, et je ne vois pas de différence avec mon code, mise à par cette histoire de master page et donc d'identifiant qui change.

    Est ce que ça pourrais être celà ou ça n'a rien à voir?

    Merci d'avance pour le deuxième coup de main...

  5. #5
    Expert confirmé
    Avatar de Immobilis
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2004
    Messages
    6 559
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Mars 2004
    Messages : 6 559
    Par défaut
    Salut,

    Pourquoi tu mets un bouton si tu veux qu'il soit "cliqué" automatiquement?

    Quand on veut qu'un evenement d'un controle déclenche la soumission du formulaire on met sa valeur AutoPostBack à true.

    A+
    "Winter is coming" (ma nouvelle page d'accueil)

  6. #6
    Membre chevronné
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Octobre 2008
    Messages
    380
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2008
    Messages : 380
    Par défaut
    D'accord merci,

    Je ne vois pas comment appliquer ton mécanisme à mon problème, je m'explique, je veux simplement rafraichir une partie d'une page lors de la fermeture d'une popup. J'ai vu pas mal d'infos sur le Web, mais je n'ai pas réussi à les mettre en oeuvre...

    si la valeur de retour de showModalDialog est à true, je voulais appeler la méthode click du bouton de recherche sur ma page (qui permettrait donc de rafraichir les données).

    J'ai l'impression d'avoir essayer dans tout les sens, et j'ai maintenant l'impression de tourner en rond.

    Pour conclure, j'avais réussi à faire un PostBack (donc appel à Page_Load avec IsPostBack à true, si j'ai bien compris!!), mais je n'avais aucune info pour savoir qui appelait la méthode et donc faire l'action associée...

    voilà où j'en suis....

  7. #7
    Expert confirmé
    Avatar de Immobilis
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2004
    Messages
    6 559
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Mars 2004
    Messages : 6 559
    Par défaut
    Citation Envoyé par eric39 Voir le message
    Pour conclure, j'avais réussi à faire un PostBack (donc appel à Page_Load avec IsPostBack à true, si j'ai bien compris!!)
    Oui, vraisemblablement si IsPostBack est vrai tu as réussi, mais comment as-tu fait?

    Ta popup met des données à jour indépendament de la page mère? Si c'est le cas un rafraichissement de la page mère suffit, non?

    A+
    "Winter is coming" (ma nouvelle page d'accueil)

  8. #8
    Membre chevronné
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Octobre 2008
    Messages
    380
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2008
    Messages : 380
    Par défaut
    Merci de prendre du temps pour m'aider.

    Citation Envoyé par Immobilis Voir le message
    Oui, vraisemblablement si IsPostBack est vrai tu as réussi, mais comment as-tu fait?
    Honnetement, je ne pourrais pas te dire pourquoi. Lorsque ma fenêtre modale est fermée, le Page_Load est appelée une fois IsPostBack=false, puis IsPostBack= true. Je n'ai pas vu d'attribut AutoPostBack renseigné à vrai.


    Citation Envoyé par Immobilis Voir le message
    Ta popup met des données à jour indépendament de la page mère? Si c'est le cas un rafraichissement de la page mère suffit, non?
    En fait, je voulais essayer de rafraichir que le GridView où les données ont changé et pas rafraichir l'ensemble. Dans l'idéal il faudrait que je rafraichisse que l'élément que je viens de mettre à jour dans la popup.....

  9. #9
    Expert confirmé
    Avatar de Immobilis
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2004
    Messages
    6 559
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Mars 2004
    Messages : 6 559
    Par défaut
    Dans l'idéal il faudrait que je rafraichisse que l'élément que je viens de mettre à jour dans la popup
    Utiliser les fonctions d'edition des gridview ou AJAX.
    "Winter is coming" (ma nouvelle page d'accueil)

  10. #10
    Membre chevronné
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Octobre 2008
    Messages
    380
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2008
    Messages : 380
    Par défaut
    Merci Immobilis.

    J'utilise donc AJAX, via AjaxControlToolkit.

    J'arrive à recharger ma GridView lors de la fermeture de la popup!!!
    En pratique j'ai maintenant dans le même fichier aspx: ma page principale et ma popup, ce qui, au vue de mes connaissances, m'a simplifié la vie....

    Je vais essayer de spliter dans deux fichiers différents pour ne pas avoir des fichiers trop long à terme.

    Merci à tout le monde pour le coup de main.

  11. #11
    Expert confirmé
    Avatar de Immobilis
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2004
    Messages
    6 559
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Mars 2004
    Messages : 6 559
    Par défaut
    Citation Envoyé par eric39 Voir le message
    J'arrive à recharger ma GridView lors de la fermeture de la popup!!!
    La totalité ou juste une ligne?
    "Winter is coming" (ma nouvelle page d'accueil)

  12. #12
    Membre chevronné
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Octobre 2008
    Messages
    380
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2008
    Messages : 380
    Par défaut
    Pour l'instant la totalité, j'aimerais effectivement recharger juste la ligne qui a été modifiée.
    Je pense continuer mes recherches dans ce sens, je ne sais pas encore trop comment m'y prendre....

    En tout cas merci beaucoup pour ton aide!

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

Discussions similaires

  1. [Débutant] Faire communiquer une master page avec une autre application web
    Par Marv27600 dans le forum ASP.NET
    Réponses: 16
    Dernier message: 20/06/2012, 10h24
  2. Réponses: 4
    Dernier message: 30/04/2009, 17h17
  3. Problème avec les master page
    Par MayOL69bg dans le forum ASP.NET
    Réponses: 2
    Dernier message: 16/03/2007, 10h45
  4. Référencement avec une seule page index.php
    Par damjal dans le forum Référencement
    Réponses: 12
    Dernier message: 21/02/2007, 13h24
  5. Réponses: 3
    Dernier message: 05/11/2006, 11h42

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