2010-08-30 3 views
1

J'ai un panneau AJAX Modal Popup qui contient un RadioButtonList, 2 étiquettes et 2 DropDowns. Je veux mettre à jour les étiquettes et DropDowns quand un bouton radio est sélectionné. Ma tentative de publication de ce qui provoque la disparition de la popup ajax.AJAX Contenu du panneau de mise à jour ModalPopup basé sur le changement des contrôles du panneau

ASPX appelé image cliquez:

<asp:Panel ID="pnlModalContainer" runat="server"> 
    <asp:RadioButtonList ID="rblTest" runat="server" RepeatDirection="Horizontal" OnSelectedIndexChanged="rblTest_SelectedIndexChanged"> 
     <asp:ListItem Text="Test 1" Value="1" Selected="True" /> 
     <asp:ListItem Text="Test 2" Value="2" /> 
    </asp:RadioButtonList> 
    <br /> 
    <asp:Label ID="lblFoo" Text="Foo" /> 
    <asp:Label ID="lblBar" Text="Bar" /> 
    <asp:DropDownList ID="ddlDogs" runat="server" DataSourceID="odsDogs" DataTextField="Dog" DataValueField="DogID" /> 
    <asp:DropDownList ID="ddlCats" runat="server" DataSourceID="odsCats" DataTextField="Cat" DataValueField="CatID" /> 
</asp:Panel> 

code Behind (vb.net):

Protected Sub rblTest_SelectedIndexChanged(ByVal sender As Object, ByVal e As EventArgs) Handles rblTest.SelectedIndexChanged 
    ' ??? 
    ' Make it change lblFoo.Text and lblBar.Text as well as the DataSource for the DDLs 
End Sub 

Répondre

1

Vous devez ajouter un UpdatePanel au sein pnlModalContainer.

+0

Même si pnlModalContainer est déjà dans un UpdatePanel? Ils devraient être imbriqués? – hurleystylee

+0

Oui. Fondamentalement, votre PostBack dit à la page de tout remplacer dans votre UpdatePanel (dans ce cas, le balisage pour le panneau modal). Lorsque cela se produit, le Modal n'existe plus sur la page et ne peut donc pas continuer à s'afficher. Nesting UpdatePanels est très bien. Assurez-vous d'entourer uniquement les éléments que vous devez mettre à jour dans leur propre panneau. – Jemes

Questions connexes