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 :

[Ajax] Updatepanel qui s'update pas.


Sujet :

ASP.NET

  1. #1
    Membre à l'essai
    Inscrit en
    Mai 2007
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Mai 2007
    Messages : 13
    Points : 10
    Points
    10
    Par défaut [Ajax] Updatepanel qui s'update pas.
    Salut,
    J'ai un updatepanel qui ne veut pas se mettre a jour et je ne comprend pas pourquoi. voici mon code

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
     
    <asp:DropDownList ID="ddlBusinessUnit" runat="server" AutoPostBack="false"></asp:DropDownList>
     
    <asp:updatepanel id="updateheader" run="server">
       <ContentTemplate>
             <asp:Label ID="lblCustomerComplaint" runat="server" Text="" ></asp:Label>
      </ContentTemplate>
       <Triggers>
            <asp:AsyncPostBackTrigger ControlID="ddlBusinessUnit" EventName="SelectedIndexChanged"/>
        </Triggers>
    </asp:updatepanel>
    voila mon code behind
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Protected Sub ddlBusinessUnit_SelectedIndexChanged1(ByVal sender As Object, ByVal e As System.EventArgs) Handles ddlBusinessUnit.SelectedIndexChanged
     
     
     
            lblCustomerComplaint.Text = "ttt"
     
            panHeader.Update()
     
     
        End Sub
    Qu'est-ce qui cloche? Pourquoi lupdate ne se met pas a jour? J'utilise VS2005 et je n'optien pas d'erreur de code. Bizarre.
    Merci!

  2. #2
    Membre averti
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2003
    Messages
    353
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Juin 2003
    Messages : 353
    Points : 361
    Points
    361
    Par défaut
    Bonjour,
    ton updatepanel s'appelle updateheader, et tu fais panHeader.update ?
    Il ne faudrait pas faire updateheader.update plutot ?

    Aussi, avec le dropdownlist, si autopostback est a true, tu n'as plus besoin de gérer l'update de ton updatepanel.

  3. #3
    Membre à l'essai
    Inscrit en
    Mai 2007
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Mai 2007
    Messages : 13
    Points : 10
    Points
    10
    Par défaut
    ah lala, effectivement, c'est une erreur asser dramatique que je n'avais même pas remarqué!

    Mais avec le nom corrigé j'optien toujours le même resultat. La page au complet se rafraichit et non seulement lupdatepanel. Est-ce que c'est possible que se soit du a une configuration du site web en entier?

  4. #4
    Membre averti
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2003
    Messages
    353
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Juin 2003
    Messages : 353
    Points : 361
    Points
    361
    Par défaut
    Citation Envoyé par ketthos Voir le message
    Est-ce que c'est possible que se soit du a une configuration du site web en entier?
    La comme ça, j'aurais tendance à dire non.
    Mais la je comprends pas pourquoi toute la page se rafraichit.

    Et tu as essayé de mettre l'autopostback a true, et de retirer le .update ?

  5. #5
    Membre averti Avatar de predalpha
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    392
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 392
    Points : 363
    Points
    363
    Par défaut
    Salut,

    essaies en nommant l'event dans ton trigger

    ddlBusinessUnit_SelectedIndexChanged1

  6. #6
    Modérateur

    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Avril 2007
    Messages
    1 996
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2007
    Messages : 1 996
    Points : 3 106
    Points
    3 106
    Par défaut
    tu ne peux pas mettre a jour un updatepanel en utilisant sa méthode UPDATE si la propriété UPDATEMODE de cet updatepanel n'a pas été définie à CONDITIONNAL.

    Autrement dit, modifie ton code comme ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    <asp:DropDownList ID="ddlBusinessUnit" runat="server" AutoPostBack="true"></asp:DropDownList>
    <asp:updatepanel id="updateheader" runat="server" updateMode="conditional" >
       <ContentTemplate>
             <asp:Label ID="lblCustomerComplaint" runat="server" Text=""></asp:Label>
      </ContentTemplate>
       <Triggers>
            <asp:AsyncPostBackTrigger ControlID="ddlBusinessUnit" />
        </Triggers>
    </asp:updatepanel>
    j'ai aussi ajouté autopostback="true" sur la ddl et viré le eventname dans le trigger. En effet, pour qu'un update panel soit mis a jour, il faut un postback, ce que tu ne faisais pas.

    Si tu met autopostback a true, tu n'as meme plus besoin de preciser le updatemode=conditional dans l'updatepanel, le simple postback de la ddl va le mettre a jour.
    Néanmoins, en mettant autopostback=true sur la dropdownlist, tu rafraichiras toute la page et perdra l'interet de l'updatepanel, je te conseille donc d'inclure tout ce code dans un seul updatepanel, comme ci-dessous:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    <asp:updatepanel id="updateheader" run="server" UpdateMode="Conditional">
       <ContentTemplate>
                 <asp:DropDownList ID="ddlBusinessUnit" runat="server" AutoPostBack="true"></asp:DropDownList>
             <asp:Label ID="lblCustomerComplaint" runat="server" Text=""></asp:Label>
      </ContentTemplate>
       <Triggers>
            <asp:AsyncPostBackTrigger ControlID="ddlBusinessUnit" />
        </Triggers>
    </asp:updatepanel>
    de cette maniere ton update panel est rafraichi des que l'index de la ddl change mais la page ne "clignote" pas.
    Penses a supprimer updatepanel.update dans ton code vb.

Discussions similaires

  1. [MySQL] [PDO] Requête qui n'update pas le champ
    Par wenijah dans le forum PHP & Base de données
    Réponses: 11
    Dernier message: 06/07/2012, 11h53
  2. [AJAX] script ajax basique qui n'est pas executé
    Par cuisto44000 dans le forum AJAX
    Réponses: 31
    Dernier message: 22/12/2011, 19h55
  3. [MySQL] Une requête update qui ne renvoie pas d'erreur mais qui n'update pas
    Par Marc22 dans le forum PHP & Base de données
    Réponses: 17
    Dernier message: 16/06/2010, 17h59
  4. Réponses: 2
    Dernier message: 20/08/2008, 23h09
  5. [MySQL] UPDATE qui ne fonctionne pas
    Par philippef dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 13/09/2005, 14h35

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