27. marts 2007 - 13:47
Der er
16 kommentarer og 1 løsning
Hvorfor virker følgende if sætning ikke?
Jeg skal når der vælges en bestemt kategori i en dropdownliste, navigere til en anden side, jeg har forsøgt med følgende kode som ikke virker: private void DropDownList1_SelectedIndexChanged(object sender, System.EventArgs e) { if ( DropDownList1.SelectedItem.Value == "valg" ) { Response.Redirect( "valg.aspx" ); }
Annonceindlæg tema
Cloud & AI
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
27. marts 2007 - 14:16
#1
Mangler du ikke et "}" til at lukke af med?
27. marts 2007 - 14:43
#2
Jo, men det er nu ikke der problemet er, der sker ingenting når jeg vælger den enkelte kategori.
27. marts 2007 - 14:44
#3
Indholdet i dropdownlisten er indlæst fra en sql database.
27. marts 2007 - 14:46
#4
Har du sat AutoPostBack="True" på din dropdownliste?
27. marts 2007 - 14:50
#5
prøv if ( ((DropDownList)this.Page.FindControl("DropDownList1")).SelectedItem.Value == "valg" )
27. marts 2007 - 14:51
#6
eller if ( ((DropDownList)PreviousPage.FindControl("DropDownList1")).SelectedItem.Value == "valg" )
27. marts 2007 - 14:59
#7
Det virker heller ikke, det er lidt mærkeligt det burde være ligetil..
27. marts 2007 - 15:01
#8
Prøv at sætte AutoEventWireup="true" i din Page Directive..
27. marts 2007 - 15:05
#9
.. og er du sikker på "valg" ikke er et textField frem for et valueField i din DropDownListe - i så fald skal du anvende SelectedItem.Text
27. marts 2007 - 15:12
#10
istedet for at skriv .Value så skriv .Text
27. marts 2007 - 15:14
#11
dvs. med din kode if ( DropDownList1.SelectedItem.Text == "valg" ) og med mine eksempler altså if ( ((DropDownList)this.Page.FindControl("DropDownList1")).SelectedItem.Text == "valg" ) if ( ((DropDownList)PreviousPage.FindControl("DropDownList1")).SelectedItem.Text == "valg" ) Det burde løse det.
02. april 2007 - 09:32
#12
Kalp: Det virker sq ikke, jeg har forsøgt følgende: private void DropDownList1_SelectedIndexChanged(object sender, System.EventArgs e) { if ( DropDownList1.SelectedItem.Text == "Valg" ) { Response.Redirect( "Valg.aspx" ); }
02. april 2007 - 09:45
#13
du skriver "Valg" med stort nu.. før skrev du "valg" med småt.. der er forskel
02. april 2007 - 10:02
#14
He He, ja det er nu ikke det der er problemet - men tak for oplysningen.. Kan det betyde noget at valgmulighederne i ddl er hentet fra en tabel i en db?
02. april 2007 - 10:05
#15
hvis du sætter et breakpoint i den metode der så kan du føre musen hen over SelectedItem.Text og se om den er blank:)
02. april 2007 - 10:18
#16
Det kan umiddelbart ikke få til at spille. Jeg viser lige koden hvor jeg henter valgmulighederne fra db til ddl: private void Page_Load(object sender, System.EventArgs e) { if (!(IsPostBack)) { string strConnection = "user id=log_Webuser;password=XXXX;"; strConnection += "initial catalog=log;server= XXXX;"; strConnection += "Connect Timeout=30"; string strsql = "Select * From dbo.rum;"; SqlConnection objConnection = new SqlConnection(strConnection); SqlCommand objCommand = new SqlCommand(strsql,objConnection); objConnection.Open(); DropDownList1.DataSource = objCommand.ExecuteReader(CommandBehavior.CloseConnection); DropDownList1.DataTextField = "rum"; DropDownList1.DataValueField = "rumID"; DropDownList1.DataBind(); DropDownList1.Items.Insert(0, new ListItem("Vælg rum", "")); Måske kan du give et hint om hvordan man ellers lige for sagerne til at virke?
10. september 2012 - 12:09
#17
Lukker
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.