Dropdown не привязан внутри панели обновления Ajax

Я использую код ниже, чтобы заполнить раскрывающийся список на выбор другого раскрывающегося списка. Но почему-то ddlSubTypes не заполняется, когда элемент выбран в ddlTypes

На выбранном событии изменения индекса ddlTypes я связываю ddlSubTypes.

<tr>
    <td class="style3">
        <asp:ScriptManager ID="scma" runat="server">
        </asp:ScriptManager>
        <asp:UpdatePanel ID="UP1" runat="server">
            <ContentTemplate>
                <asp:DropDownList ID="ddlTypes" runat="server" Width="200px" AutoPostBack="true" OnSelectedIndexChanged="ddlTypes_SelectedIndexChanged1">
                </asp:DropDownList>
            </ContentTemplate>
        </asp:UpdatePanel>
    </td>
</tr>
<tr>
    <td class="style3">
        <asp:UpdatePanel ID="UP2" runat="server">
            <ContentTemplate>
                <asp:DropDownList ID="ddlSubTypes" runat="server" Width="200px">
                </asp:DropDownList>
            </ContentTemplate>
        </asp:UpdatePanel>
    </td>
</tr>



Protected Sub ddlTypes_SelectedIndexChanged1(ByVal sender As Object, ByVal e As System.EventArgs) Handles ddlTypes.SelectedIndexChanged
        Try
            'Populate schemes
            ddlSubTypes.Items.Clear()
            Dim ID As Integer = ddlTypes.SelectedValue
            Dim dt As DataTable = IterateSubtypesContents(ID)

            ddlSubTypes.DataTextField = dt.Columns("Type").ToString()
            ddlSubTypes.DataValueField = dt.Columns("ID").ToString()
            ddlSubTypes.DataSource = dt
            ddlSubTypes.DataBind()

            UP2.Update()
        Catch ex As Exception

        End Try
    End Sub

1 ответ

Вы должны добавить триггер ко второй панели обновления, который срабатывает при событии selectedIndexChanged первого выпадающего списка.

<asp:UpdatePanel ID="UP2" runat="server">
  <ContentTemplate>
    <asp:DropDownList ID="ddlSubTypes" runat="server" Width="200px">
    </asp:DropDownList>
   </ContentTemplate>
   <Triggers>
     <asp:AsyncPostBackTrigger ControlID="Control That Triggers this Panel" EventName="Desired Event that triggers" />
   </Triggers>
</asp:UpdatePanel>
Другие вопросы по тегам