Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


jämföra värden i dropdownlists

Postades av 2003-10-09 16:48:30 - Andreas Lindh, i forum asp.net generellt, Tråden har 6 Kommentarer och lästs av 774 personer

Jag har en sida med 22 dropdownlists där man kan välja vilka spelare som ska vara med i en hockeymatch.

Kan jag på något smidigt sätt kolla så att samma namn inte är valt två gånger?


Svara

Sv: jämföra värden i dropdownlists

Postades av 2003-10-09 18:49:35 - Peter Ilis

iofs. vb.net och iofs går det säkert att göra mycket snyggare.. :)
<code>
Private Function SammaVald() As Boolean
Dim ValdaSpelare(21) As String
Dim c As Control
Dim i, j As Integer
For Each c In Controls
If c.GetType.ToString = "System.Windows.Forms.ComboBox" Then
Dim cbo As ComboBox
cbo = c
cbo.SelectedIndex = 0
ValdaSpelare(i) = cbo.SelectedItem 'beror på hur du laddar listorna.
i += 1
End If
Next

For i = 0 To ValdaSpelare.Length - 1
For j = i + 1 To ValdaSpelare.Length - 1
If ValdaSpelare(i) = ValdaSpelare(j) Then
Return True
End If
Next
Next
Return False
End Function
</code>


Svara

Sv: jämföra värden i dropdownlists

Postades av 2003-10-09 20:36:40 - Andreas Lindh

Jag ändrade lite men får det inte att fungera.
Användaren ska kunna lämna dropdownlistor tomma. De tomma dropdownlistorna har värdet 0

Försökte kontrollera dom där värdet inte är 0
<code>
Private Function SammaVald() As Boolean
Dim ValdaSpelare(42) As String
Dim c As Control
Dim i, j As Integer
For Each c In Controls
If c.GetType.ToString = "System.web.ui.webcontrols.dropdownlist" Then
Dim cbo As DropDownList
cbo = c
cbo.SelectedIndex = 0
If Not CStr(cbo.SelectedItem.Value) = "0" Then
ValdaSpelare(i) = cbo.SelectedItem.Value 'beror på hur du laddar listorna.
End If

i += 1
End If
Next

For i = 0 To ValdaSpelare.Length - 1
For j = i + 1 To ValdaSpelare.Length - 1
If ValdaSpelare(i) = ValdaSpelare(j) Then
Return True
End If
Next
Next
Return False
End Function
</code>

Sen så anropar jag funktionen
<code>
If SammaVald() Then
Response.Write("FEL")
Else
Response.Write("Rätt")
End If
</code>


Svara

Sv: jämföra värden i dropdownlists

Postades av 2003-10-09 21:00:20 - Peter Ilis

Vad är det som inte fungerar?

Edit
Det under fungerar hos mig.


Svara

Sv: jämföra värden i dropdownlists

Postades av 2003-10-09 21:17:46 - Peter Ilis

<code>
Dim ValdaSpelare(42) As String
Dim c As Control
Dim i, j As Integer
For Each c In Me.Page.Controls(1).Controls
If c.GetType.ToString = "System.Web.UI.WebControls.DropDownList" Then
Dim cbo As DropDownList
cbo = c
ValdaSpelare(i) = cbo.SelectedItem.Value 'beror på hur du laddar listorna.
i += 1
End If
Next

For i = 0 To ValdaSpelare.Length - 1
For j = i + 1 To ValdaSpelare.Length - 1
If ValdaSpelare(i) = ValdaSpelare(j) And Not ValdaSpelare(i) = "0" And Not ValdaSpelare(i) = Nothing Then
Return True
End If
Next
Next
Return False
</code>


Svara

Sv: jämföra värden i dropdownlists

Postades av 2003-10-09 21:41:58 - Andreas Lindh

Kom på varför det blir fel.

Testade att skriva ut vilka kontroller som hittades och fick då bara ut
System.Web.UI.LiteralControl
System.Web.UI.WebControls.Table
System.Web.UI.LiteralControl

Dropdownlisterna ligger i en tabell med 22 rader som ligger i en annan tabell.


Svara

Sv: jämföra värden i dropdownlists

Postades av 2003-10-10 12:28:00 - Andreas Lindh

Löste det så här. Kanske inte är det snyggaste/bästa sättet men det fungerar

<code>
Private Function SammaVald() As Boolean
Dim ValdaSpelare(21) As String
Dim c As Control
Dim c1 As Control
Dim c2 As Control
Dim i, j As Integer
For Each c In tblAPlayers.Controls
If LCase(c.GetType.ToString) = "system.web.ui.webcontrols.tablerow" Then
For Each c1 In c.Controls
If LCase(c1.GetType.ToString) = "system.web.ui.webcontrols.tablecell" Then
For Each c2 In c1.Controls
If LCase(c2.GetType.ToString) = "system.web.ui.webcontrols.dropdownlist" Then
Dim cbo As DropDownList
cbo = c2
ValdaSpelare(i) = cbo.SelectedItem.Value
i += 1
End If
Next
End If
Next
End If
Next

For i = 0 To ValdaSpelare.Length - 1
For j = i + 1 To ValdaSpelare.Length - 1
If ValdaSpelare(i) = ValdaSpelare(j) And Not ValdaSpelare(i) = "0" And Not ValdaSpelare(i) = Nothing Then
Return True
End If
Next
Next
Return False
End Function
</code>


Svara

Nyligen

  • 09:09 Vill du köpa medicinska tester?
  • 12:47 Vem beviljar assistansen – kommune
  • 14:17 Någon med erfarenhet av hemstädnin
  • 14:14 Bör man använda sig av en båtförme
  • 14:12 Finns det någon intressant hundblo
  • 14:25 Tips på verktyg för att skapa QR-k
  • 14:23 Tips på verktyg för att skapa QR-k
  • 20:52 Fungerer innskuddsbonuser egentlig

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 569 600
27 953
271 705
4 042
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies