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 fra Infor
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.