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 :

[2.0] Gridview et javascript


Sujet :

ASP.NET

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    58
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 58
    Par défaut [2.0] Gridview et javascript
    Bonjour,
    je suis en train de créer une gridview. J'aimerai que quand l'utilisateur clique sur un bouton "supprimer", une fenetre de confirmation en javascript s'affiche.
    Je sais le faire un datagrid mais sur les gridview je seche.

    please help !

  2. #2
    Membre éclairé
    Inscrit en
    Janvier 2006
    Messages
    79
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Janvier 2006
    Messages : 79
    Par défaut
    dans l'evenement ItemDataBound de ton gridview:

    Il faut juste que tu mettes le bon index de cellules...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Dim lnkDelete As LinkButton = CType(e.Item.Cells(0).Controls(0), LinkButton)
    lnkDelete.Attributes.Add("onclick", "return confirm('Heureux dans la vie?');")

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    58
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 58
    Par défaut
    en fait je n'ai pas de type Button mais plutot ButtonField
    je suis en train de faire tout en controle serveur et donc c'est pas évident.

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    129
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Avril 2004
    Messages : 129
    Par défaut
    je suis d'accord avec crimsonPhantom. Pour ton problème de buttonfield. Plutôt que de mettre une colonne buttonfield met une colonne template et la tu pourras mettre ce que tu veux. En fait si tu mets une colonne buttonfield tu auras des bouton ASP.NET et donc tu auraus des postback de lancé à chaque fois alors que ca ne sert pas car tu veux afficher un confirm. Je crois qu'un liens serais mieux parce que sera plus fluide mais c'est une question de goût. Ensuite selon le bouton cliqué dans ta boite de message tu fais l'action voulu.

    Tu peux aussi afficher directement du code HTML dans une cellule et donc tu te mets une image cliquable avec le code JS voulu. Par exemple:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ligne.Cells(0).Text = "<a href=""#"" onclick=""Action('uneaction')""><img src=""image.gif"" border=""0""></a>"

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    58
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 58
    Par défaut
    crimsonPhantom j'ai essayé ta méthode (avec des button) !
    mais ca marche pas. Il m'affcihe bien la petite fenetre de confirmation mais que je valide ou que j'annule la page ne se rafraichit pas.

    C'est triste !

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    129
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Avril 2004
    Messages : 129
    Par défaut
    Comment as-tu fais le code de ton confirm ? Le confirm est en Javascript et donc ce n'est pas un composant ASP qui fait des postback de façon automatique. Si tu veux un refresh ou une redirection tu dois toi même le coder. Voici un exemple:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    resultat = confirm("Comment ça va?")
     
    if (resultat != 0)
    {
       //faire un postback
       __doPostBack();
     
      //une redirection
      location.href = "nouvellepage.aspx";
     
    }

  7. #7
    Membre averti
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    58
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 58
    Par défaut
    voila comment j'ai fais
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
     private void _listeQA_RowDataBound(object sender, System.Web.UI.WebControls.GridViewRowEventArgs e)
            {
                         try
                {
                    Button b = (Button)e.Row.Controls[3].Controls[0] ;
                    b.Attributes.Add("onclick", "javascript: return confirm('Heureux dans la vie?');");
                }
                catch (Exception ex) { Page.Response.Write(ex.Message ); }
    si je regarde le code html ca donne :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <input type="button" value="Supprimer" onclick="javascript: return confirm('Heureux dans la vie?');javascript:__doPostBack('FAQControle$ctl01$itest','Supprimer$0')" />

  8. #8
    Membre averti
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    58
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 58
    Par défaut
    bon j'ai trouvé comment faire ! c'est pas joli, joli !
    les buttonField possède déjà du javascript c'est pourquoi je ne peux pas en rajouter comme je veux.
    le truc c'est que lors du attributes.Add(...) je rajoute le javascript plus des "//" pour mettre en commentaire celui généré par le button lui meme.

    j'aime pas cette solution mais ca marche. Si quelqu'un connait une solution plus propre, merci de la partager ! ;-)

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 26/04/2012, 12h16
  2. gridview header javascript
    Par topolino dans le forum ASP.NET
    Réponses: 2
    Dernier message: 24/09/2008, 20h58
  3. Manipuler GridView en javascript
    Par riric85 dans le forum ASP.NET
    Réponses: 3
    Dernier message: 28/05/2008, 17h17
  4. Réponses: 6
    Dernier message: 18/10/2007, 15h09
  5. [2.0]Changer couleur ligne gridview en javascript
    Par tscoops dans le forum ASP.NET
    Réponses: 3
    Dernier message: 08/06/2007, 16h10

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