私は自分のWebページにドラッグアンドドロップjqueryを実装しています。ユーザーの選択に従ってコードの背後にある列を読み込み、ユーザーは必要に応じてそれらを編集できます。しかし、私は、宛先列で選択された項目を取得しようとしているとき、そのrepeater.items数はゼロであり、ソースrepeater.itemsはページの読み込み時と同じにカウントされます。ここにコードがあります。ソート可能なコミュンズでドロップされたアイテムの値をコードの後ろから取得します
<div class="Content" id="DragAndDrop" style="width: 100%; display: flex; justify-content: center; font-size: 9px;">
<ul id="sortable1" class="connectedSortable" style="width: 45%; border: groove">
<asp:Repeater ID="DivisionSource" runat="server">
<ItemTemplate>
<%--<li class="ui-state-default" id="lblSource" ><%# Eval("DivisionName") %></li>--%>
<li class="ui-state-default" >
<asp:Label id="lblSource" runat="server" Text='<%# Eval("DivisionName") %>' ></asp:Label> </li>
</ItemTemplate>
</asp:Repeater>
</ul>
<ul id="sortable2" class="connectedSortable" style="width: 45%; border: groove; list-style: none">
<asp:Repeater ID="DivisionDest" runat="server" >
<ItemTemplate>
<li class="ui-state-default" >
<asp:Label id="lblDest" runat="server" Text='<%# Eval("DivisionName") %>' ></asp:Label> </li>
<%-- <li class="ui-state-default" id="<%# Eval("DivisionID") %>" style="display: none;">SAP: Strategizing Activities and Practices</li>--%>
</ItemTemplate>
</asp:Repeater>
</ul>
</div>
データは、データへのアクセスにpageload()
DivisionSource.DataSource = DivResultSource
DivisionSource.DataBind()
DivisionDest.DataSource = DivResultDest
DivisionDest.DataBind()
コードの後ろにrepeterデータ・バインドで囲まれています。ポストバックで
Dim DivisionSource As Repeater = Wizard1.FindControl("DivisionSource")
Dim DivisionDest As Repeater = Wizard1.FindControl("DivisionDest")
Dim SelectedDivisionvalue As String = Nothing
Dim i As Integer = 1
For Each item As RepeaterItem In DivisionDest.Items
If (item.ItemType = ListItemType.Item) Then
Dim lblValue As Label = CType(item.FindControl("lblDest"), Label)
SelectedDivisionvalue = lblValue.Text
i += 1
End If
Next
を、DivisionSource.itemsはデフォルト時と同じです数えますページがロードされ、DivisionDest.items数が0です。
答えをありがとう、私の答えを参照してくださいどのように私はそれをしました。あなたの答えは正しい方向に導かれました。 – Arpan