Check alle échte Black Friday-deals Ook zo moe van nepaanbiedingen? Wij laten alleen échte deals zien

[ASP.NET]Checkboxlist_IndexChanged doet zijn bewerking niet.

Pagina: 1
Acties:

  • Sven_Vdb
  • Registratie: Januari 2006
  • Laatst online: 29-11 19:44
Ik ben dus bezig met de checkboxlisten uit te lezen.Dit gebeurt in array die hele lijst te doorlopen.
En ik heb ook een button om alles te selecteren in de checkbox list.

Alleen het grote probleem is hij leest de gegevens niet in de array als ik op de btnKassaSa(select all) klik.Maar bij filiaal doe ik net hetzelfde ook met hele code + array en ook met select all.
En dan werkt het wel.Want als ik druk op select all vinkt hij die allemaal aan.En gaat de kassa's in de checkboxlist toevoegen.Dus hij heeft de hele functie doorlopen.

Dus ik schets nog even. Ik druk op select all bij de button Filiaal ,hij vinkt ze allemaal aan en steekt ze in array.Dan komen de kassa's tevoorschijn op checkboxlist.Daarna druk ik op select all button bij kassa.Hij vinkt ze allemaal aan maar hij doorloopt de code niet en zet ze niet in de array natuurlijk.

Het is toch 2 keer dezelfde code.Waarom zet hij het de ene keer er dan wel in en de andere keer niet? Ik hoop dat iemand me kan helpen

ASP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
 Public Sub CheckBoxListKassa_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles CheckBoxListKassa.SelectedIndexChanged
        Dim aantalGeselecteerd As Integer = 0
        Dim li As ListItem
        Dim cmd As SqlCommand

        'Kijken welke kassa geselecteerd zijn
        aantalkassa = CheckBoxListKassa.Items.Count - 1
        aantalfiliaal = CheckBoxListFiliaal.Items.Count - 1
        ReDim kassanaamselec(aantalkassa)
        ReDim kassanummerselec(aantalkassa)

        For Each li In CheckBoxListKassa.Items
            If li.Selected = True Then
                kassanaamselec(i) = li.Value
                aantalGeselecteerd += 1
            End If
            i += 1
        Next li
        If aantalGeselecteerd = 0 Then
            fout = "Geen kassa geselecteerd"
            MsgBox(fout)
        End If

        For i = 0 To aantalkassa
            Dim connkas As New SqlConnection(ConfigurationManager.AppSettings("ConnString"))
            If Not kassanaamselec(i) = "" Then
                Try
                    cmd = New SqlCommand("sp_kassanummerselec", connkas)
                    cmd.CommandType = CommandType.StoredProcedure
                    Dim Param1 As New SqlParameter("@naam", SqlDbType.VarChar, 255)
                    cmd.Parameters.Add(Param1)
                    Param1.Direction = ParameterDirection.Input
                    Param1.Value = kassanaamselec(i)
                    Dim Param2 As New SqlParameter("@kassanummer", SqlDbType.VarChar, 255)
                    cmd.Parameters.Add(Param2)
                    Param2.Direction = ParameterDirection.Output

                    connkas.Open()
                    cmd.ExecuteNonQuery()

                    kassanummerselec(i) = cmd.Parameters("@kassanummer").Value.ToString

                    cmd.Dispose()

                    connkas.Close()
                    connkas.Dispose()

                Catch ex As Exception
                    MsgBox(ex.Message)
                End Try
            End If
        Next

        Session("kassanummerselecarray") = kassanummerselec
End Sub


ASP:
1
2
3
4
5
6
7
  Public Sub btnKassaSa_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnKassaSa.Click
        Dim li As ListItem

        For Each li In CheckBoxListKassa.Items
            li.Selected = True
        Next
    End Sub


ASP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
Public Sub CheckBoxListFiliaal_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles CheckBoxListFiliaal.SelectedIndexChanged
        Dim conn As New SqlConnection(ConfigurationManager.AppSettings("ConnString"))
        Dim li As ListItem
        Dim cmd As SqlCommand
        Dim dr As SqlDataReader
        Dim aantalGeselecteerd As Integer = 0



        'Kijken welke filialen geselecteerd zijn
        aantalfiliaal = CheckBoxListFiliaal.Items.Count - 1
        ReDim filiaalnaam(aantalfiliaal)
        ReDim filiaalnummer(aantalfiliaal)

        For Each li In CheckBoxListFiliaal.Items
            If li.Selected = True Then
                filiaalnaam(i) = li.Value
                aantalGeselecteerd += 1
            End If
            i += 1
        Next li
        If aantalGeselecteerd = 0 Then
            fout = "Geen filiaal geselecteerd"
            MsgBox(fout)
        End If


        'Juiste filiaalnummer inlezen bij geselecteerde filialen
        For i = 0 To aantalfiliaal
            Dim connfil As New SqlConnection(ConfigurationManager.AppSettings("ConnString"))
            If Not filiaalnaam(i) = "" Then
                Try
                    cmd = New SqlCommand("sp_filiaalnummer", connfil)
                    cmd.CommandType = CommandType.StoredProcedure
                    Dim Param1 As New SqlParameter("@naam", SqlDbType.VarChar, 255)
                    cmd.Parameters.Add(Param1)
                    Param1.Direction = ParameterDirection.Input
                    Param1.Value = filiaalnaam(i)
                    Dim Param2 As New SqlParameter("@filiaalnummer", SqlDbType.VarChar, 4)
                    cmd.Parameters.Add(Param2)
                    Param2.Direction = ParameterDirection.Output

                    connfil.Open()
                    cmd.ExecuteNonQuery()

                    filiaalnummer(i) = cmd.Parameters("@filiaalnummer").Value.ToString

                    cmd.Dispose()

                    connfil.Close()
                    connfil.Dispose()
                Catch ex As Exception
                    MsgBox(ex.Message)
                End Try
            End If
        Next

        'Aantal kassa's uitlezen
        cmd = New SqlCommand("sp_countkassa", conn)
        cmd.CommandType = CommandType.StoredProcedure
        Dim Param3 As New SqlParameter("@aantal", SqlDbType.Int, 255)
        cmd.Parameters.Add(Param3)
        Param3.Direction = ParameterDirection.Output

        conn.Open()
        cmd.ExecuteNonQuery()

        aantal = cmd.Parameters("@aantal").Value.ToString

        conn.Close()

        aantalkassa = aantal - 1
        'Kassanummer uitlezen
        ReDim kassanummer(aantalkassa)
        j = 0
        Try

            cmd = New SqlCommand("sp_kassanummer", conn)
            cmd.CommandType = CommandType.StoredProcedure

            conn.Open()
            dr = cmd.ExecuteReader

            If dr.HasRows Then
                Do While dr.Read
                    kassanummer(j) = dr("Iden")
                    j += 1
                Loop
            End If

            dr.Close()
            conn.Close()

        Catch ex As Exception
            MsgBox(ex.Message)
        End Try


        'Kijken welke kassa's bij welk filiaal hoort
        CheckBoxListKassa.Items.Clear()
        ReDim filiaalkassa(aantalfiliaal, aantalkassa)
        ReDim filiaalkassanaam(aantalfiliaal, aantalkassa)
        Dim filiaalsubstr As String
        Dim kassasubstr As String

        For k = 0 To aantalkassa
            filiaalsubstr = kassanummer(k).Substring(0, 4)
            kassasubstr = kassanummer(k).Substring(4, 4)

            For l = 0 To aantalfiliaal
                If filiaalnummer(l) = filiaalsubstr Then
                    filiaalkassa(l, k) = filiaalsubstr & kassasubstr
                End If
            Next
        Next



        'Naam van kassa uitlezen uit sql server en toevoegen bij checklist
        For k = 0 To aantalkassa
            For l = 0 To aantalfiliaal
                Dim connkas As New SqlConnection(ConfigurationManager.AppSettings("ConnString"))
                If Not filiaalkassa(l, k) = "" Then
                    Try
                        cmd = New SqlCommand("sp_kassanaam", connkas)
                        cmd.CommandType = CommandType.StoredProcedure
                        Dim Param4 As New SqlParameter("@kasnummer", SqlDbType.VarChar, 8)
                        cmd.Parameters.Add(Param4)
                        Param4.Direction = ParameterDirection.Input
                        Param4.Value = filiaalkassa(l, k)
                        Dim Param5 As New SqlParameter("@kassanaam", SqlDbType.VarChar, 255)
                        cmd.Parameters.Add(Param5)
                        Param5.Direction = ParameterDirection.Output

                        connkas.Open()
                        cmd.ExecuteNonQuery()

                        filiaalkassanaam(l, k) = cmd.Parameters("@kassanaam").Value.ToString

                        cmd.Dispose()
                        connkas.Close()
                        connkas.Dispose()

                        CheckBoxListKassa.Items.Add(filiaalkassanaam(l, k))

                    Catch ex As Exception
                        MsgBox(ex.Message)
                    End Try
                End If
            Next
        Next

        Session("kassanummerarray") = kassanummer
        Session("filiaalkassaarray") = filiaalkassa
        Session("filiaalnummerarray") = filiaalnummer

    End Sub


ASP:
1
2
3
4
5
6
7
8
9
 Public Sub btnFiliaalSa_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnFiliaalSa.Click

        Dim li As ListItem

        For Each li In CheckBoxListFiliaal.Items
            li.Selected = True
        Next

    End Sub

  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 22:16

gorgi_19

Kruimeltjes zijn weer op :9

Of de AutoPostBack ontbreekt, of de check op Page.IsPostBack in je Page_Load ontbreekt.

Digitaal onderwijsmateriaal, leermateriaal voor hbo


  • Sven_Vdb
  • Registratie: Januari 2006
  • Laatst online: 29-11 19:44
Het postback commando staat in mijn Page_load.
En op elke checkboxlist staat autopostback op true
Maar het is zo raar.Dat het bij de eerste checkboxlist wel doet en bij de andere niet.

[ Voor 16% gewijzigd door Sven_Vdb op 20-10-2007 13:45 ]


  • Sven_Vdb
  • Registratie: Januari 2006
  • Laatst online: 29-11 19:44
Probleem is opgelost. Bij de andere had ik blijkbaar nog bijstaan onclick="...."
En bij deze dus niet.Heb het hier ook even toegevoegd en het werkt. :)

  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
Als je code post, post dan voortaan a.u.b. alleen relevante delen. De lappen die je nu post zijn nu niet echt makkelijk voor lezers te 'analyseren' door alle poespas eromheen.

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij