На моей странице есть элемент управления повторителем, который используется для отображения товаров в корзине. В разделе количества у меня есть выпадающий список, который заполняется на основе данных элемента (в зависимости от того, сколько элементов доступно). Пока все хорошо.
По какой-то причине я не могу запустить событие selectedvaluechanged. Я пробовал несколько способов заставить его работать.
<asp:Repeater ID="rptTimes" runat="server">
<ItemTemplate>
<div class='CartItem'>
<div class='ShoppingCartImage'>
<img src='/Images/Products/<%#DataBinder.Eval(Container.DataItem, "_image")%>' alt="<%#DataBinder.Eval(Container.DataItem, "_name")%>" />
</div>
<div class='ShoppingCartName'>
<%#DataBinder.Eval(Container.DataItem, "_name")%><br />
<span class="BasketLeastAm"><%=StaticTranslator.TranslateWord("Minsta antal", lang)%> <%#DataBinder.Eval(Container.DataItem, "_LeastAmount")%></span>
</div>
<div class='ShoppingCartPrice'>
<%#DataBinder.Eval(Container.DataItem, "_price")%> KR / <%#DataBinder.Eval(Container.DataItem, "_unit")%>
</div>
<div class='ShoppingCartAmount'>
<asp:DropDownList runat="server" EnableViewState="false" OnSelectedIndexChanged="ddlList_SelectedIndexChanged" ID="ddlAmount" AutoPostBack="true"></asp:DropDownList>
</div>
<div class='ShoppingCartPartSum'>
<%#CalcPartSum(DataBinder.Eval(Container.DataItem, "_price"), DataBinder.Eval(Container.DataItem, "_amount"))%> KR
</div>
<div class='ShoppingCartCancel'>
<asp:ImageButton style="float:left;" ID="ImageButton1" OnCommand="Btn_Click_Delete" CommandName="delete" CommandArgument='<%#DataBinder.Eval(Container.DataItem, "_id").ToString%>' ImageUrl="./Images/Siteimages/kryss.svg" runat="server" />
</div>
</div>
</ItemTemplate>
</asp:Repeater>
Protected Sub rptTimes_ItemDataBound(sender As Object, e As RepeaterItemEventArgs) Handles rptTimes.ItemDataBound
Dim myItem As Basketitem = DirectCast(e.Item.DataItem, Basketitem)
Dim myLowest As Integer = myItem._LeastAmount
Dim ddlList As DropDownList = e.Item.FindControl("ddlAmount")
For i As Integer = myLowest To 100
ddlList.Items.Add(New ListItem With {.Text = i.ToString, .Value = myItem._id})
Next
End Sub
Public Sub ddlList_SelectedIndexChanged(sender As Object, e As EventArgs)
Dim myList As List(Of Basketitem) = Session("Basket")
Dim SelectedID As Integer = DirectCast(sender, DropDownList).SelectedValue
For Each x In myList
If x._id = SelectedID Then
x._amount = CInt(DirectCast(sender, DropDownList).SelectedItem.Text)
End If
Next
Session("Basket") = myList
End Sub
Все работает, кроме события selectindexchange, которое не запускается. Какую часть я пропускаю?