Jag har två listboxar där användaren kan flytta poster mellan listboxarna med hjälp av ett javascript. Men när jag försöker spara ner användarens slutliga val i den högra listboxen funkar det inte, eftersom Listbox kontrollen bara kan spara ner det som fanns med i boxen när den skickades från servern. Alltså det som flyttas till boxen med hjälp av clientscript och som också med hjälp av clientscript markeras kan inte sparas server-side. OlleListbox och spara markerat
Följande kod hittar bara poster som finns i samlingen när sidan postades:
<code>
Dim Item As ListItem
Dim insPrnID As Integer
For Each Item In MyListbox.Items
If Item.Selected = True Then
insPrnID = Item.Value
Dim arParams2() As SqlParameter = New SqlParameter(3) {}
arParams2(0) = New SqlParameter("@prnID", SqlDbType.Int)
arParams2(0).Value = Item.Value
arParams2(1) = New SqlParameter("@groupID", SqlDbType.Int)
arParams2(1).Value = groupID
arParams2(2) = New SqlParameter("@createdDate", SqlDbType.SmallDateTime)
arParams2(2).Value = dtNowDate
arParams2(3) = New SqlParameter("@createdBy", SqlDbType.Int)
arParams2(3).Value = lngPrnID
SqlHelper.ExecuteNonQuery(strConn, CommandType.StoredProcedure, "sp_CreateNewGroupMember", New SqlParameter("@prnID", insPrnID), New SqlParameter("@groupID", groupID), New SqlParameter("@createdDate", dtNowDate), New SqlParameter("@createdBy", lngPrnID))
End If
Next
</code>
Man kan givetvis fixa problemet server-side, men det känns som om det borde finnas en lösning på något sätt. Dessutom blir processen att flytta mellan listboxarna mycket effektivare genom clientscript. Speciellt om man har många poster. Sv: Listbox och spara markerat
Jag hade ett liknande problem och löste det genom att på onSubmit köra ett clientside script som markerar alla poster i listboxen som innehåller de nya värdena. (Glöm inte att sätta listboxens prop SelectionMode till multiple)
Sedan kan du fånga upp alla värdena med hjälp av Request.Form
Johan