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 :

[3.5] UpdatePanel et intialisation


Sujet :

ASP.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre Expert Avatar de franculo_caoulene
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    2 880
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 2 880
    Par défaut [3.5] UpdatePanel et intialisation
    Salut,

    J'utilise UpdatePanel pour la première fois pour faire de l'ajax. J'ai un petit souci d'initialisation on va dire.
    J'ai un RadioButtonList de trois boutons et un DropDownList dont le contenu varie selon la bouton coché précédemment. J'initialise le formulaire en cochant la premier bouton radio et donc, implicitement, en peuplant le DropdownList. Le problème est qu'en initialisant ce bouton radio, si je coche le deuxième bouton radio ou le troisième ça fonctionne, le contenu du DropDownList est remis à jour. Par contre, si je coche à nouveau le premier bouton radio rien ne se passe. J'actualise le contenudu DropDownList sur l'évènement RadioButtonList1e.SelectedIndexChanged, je suppose que pour l'application, quelque part, l'index sélectionné n'a pas changé!

    Auriez-vous une explication à cela? Voici un bout de code pour illustré mes propos, mais il n'est pas fonctionnel puisqu'il y a un accès aux bases de données :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    <%@ Page Language="VB" AutoEventWireup="false" CodeFile="updatePanel.aspx.vb" Inherits="ajax_updatePanel" %>
     
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
     
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head runat="server">
        <title>Page sans titre</title>
    </head>
    <body>
        <form id="form1" runat="server">
          <asp:scriptmanager runat="server">
          </asp:scriptmanager>
        <div>
           <asp:RadioButtonList 
             ID="RadioButtonList1" 
             runat="server" 
             AutoPostBack="true" 
             RepeatColumns="3" 
             RepeatDirection="Horizontal">
             <asp:ListItem Value="0" Text="0" Selected="True"></asp:ListItem>
             <asp:ListItem Value="1" Text="1"></asp:ListItem>
             <asp:ListItem Value="2" Text="2"></asp:ListItem>
           </asp:RadioButtonList>
          <asp:UpdatePanel ID="cwUpdateTypeBien" runat="server">
             <ContentTemplate>
                <asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>
             </ContentTemplate>
             <triggers>
                <asp:AsyncPostBackTrigger controlid="RadioButtonList1" eventname="SelectedIndexChanged" />
             </triggers>
          </asp:UpdatePanel>
        </div>
        </form>
    </body>
    </html>
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Partial Class ajax_updatePanel
        Inherits System.Web.UI.Page
     
        Protected Sub RadioButtonList1_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles RadioButtonList1.SelectedIndexChanged
            Label1.Text = sender.selectedvalue
        End Sub
    End Class
    Une ligne est commentée dans ce code. Si elle reste commentée ça fonctionne bien, mais ce n'est pas le comportement que je recherche. Si je la décommente, j'obtiens le résultat qui me pose problème.

    Si vous avez besoin de plus d'informations, n'hésitez pas à me relancer.

    Merci par avance.

  2. #2
    Membre Expert Avatar de franculo_caoulene
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    2 880
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 2 880
    Par défaut
    Salut,

    Je reviens au sujet de ce problème. Je pensais l'avoir résolu mais en fait... non!

    J'ai simplifié le code source, vous pouvez maintenant faire un simple copier/coller pour tester. Si une des options est sélectionnée par défaut, l'évènement selectedIndexChanged n'intervient pas sur celle-ci.

    En connaissez-vous la raison?

  3. #3
    Membre Expert Avatar de franculo_caoulene
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    2 880
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 2 880
    Par défaut
    Je ne voulais pas trop, finalement je passe par javascript :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
        Page.ClientScript.RegisterStartupScript(Me.GetType(), "setSelected", "document.getElementById(""" & RadioButtonList1.ClientID & "_0"").checked = true;", True)
    End Sub

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

Discussions similaires

  1. Erreur d'intialisation de Borland Database Engine
    Par unikorn dans le forum C++Builder
    Réponses: 6
    Dernier message: 03/12/2008, 14h49
  2. intialiser un HashMap static en java 1.5
    Par eXiaNazaire dans le forum Collection et Stream
    Réponses: 11
    Dernier message: 24/09/2006, 11h12
  3. modifier parametre d'intialisation
    Par nabou dans le forum Oracle
    Réponses: 7
    Dernier message: 05/07/2006, 13h46
  4. comment intialiser le format de la date
    Par iam dans le forum Delphi
    Réponses: 4
    Dernier message: 25/06/2006, 19h26
  5. Réponses: 3
    Dernier message: 14/04/2006, 21h43

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