Avatar billede bjornhart Nybegynder
29. august 2005 - 21:04 Der er 8 kommentarer og
1 løsning

problem med dropdownmenu

hej gutter

Den her er lidt tricky!

Jeg har fundet en gratis dropdownmenu control der hedder easymenu. På en af mine sider(filwbrowser.aspx)kan man downloade filer. Det gør jeg ved en side jeg har kaldt download.aspx.

Når man klikker på en fil laver jeg vha. en linkbutton's onclick event udfører jeg flg. kode:"Response.Write("<script>window.open('download.aspx')</script>")" som åbner et nyt vindue med den valgte fil.

Problemet er at koden "Response.Write("<script>window.open('download.aspx')</script>")" ødelægger min menu. Dropdown funktionaliteten virker ikke efter at ovenstående kode bliver kaldt.

Nogen ideer?
Avatar billede snepnet Nybegynder
29. august 2005 - 21:09 #1
kender ikke menuen - men prøv følgende :

sørg for at du kan skrive til dit body-tag på siden:

<body id="body" runat="server">

i din codebehind - gør følgende :

protected HtmlGenericControl body;

og i den situation hvor du vil have scriptet ud, prøv da sådan her istedet:

body.Attributes.Add("onload","window.open('download.aspx');");

... og se hvad der sker ;o)

mvh
Avatar billede bjornhart Nybegynder
29. august 2005 - 21:23 #2
jeg har ikke adgang til body objektet fra onclick-eventen
Avatar billede snepnet Nybegynder
29. august 2005 - 21:27 #3
ligger din eventhandler ikke i din codebehind ell.?

hvis du laver sådan en her i koden:
protected HtmlGenericControl body;

kan du programmaere mode den, og hvis du sørger for at din body har id="body" - bliver den mappet til protected HtmlGenericControl body runtime.

mvh
Avatar billede bjornhart Nybegynder
30. august 2005 - 07:58 #4
ok nu har jeg fået adgang til body variablen, men der sker ikke noget. Jeg får ikke et nyt browser vindue op når jeg trykker på knappen. Koder i øvrigt i VB. min kode ser således ud:

Dim body As New HtmlGenericControl("body")
body.Attributes.Add("onload", "java script:window.open('download.aspx');")
Avatar billede bjornhart Nybegynder
30. august 2005 - 08:23 #5
Jeg er tænkt mig frem til at jeg ikke skal bruge new når tagget er oprettet. Ved du hvordan jeg i VB kode får adgang til den?
Avatar billede bjornhart Nybegynder
30. august 2005 - 08:40 #6
Nu virker det. I hvertfald med med at åbne et windue fra body onload. I VB deklareres variablen som "Protected body As HtmlGenericControl". Desværre hjalp det ikke på min menu, som stadig ikke virker efter kaldet. Hvis jeg via en knap genindlæser siden virker menuen igen... mærkeligt, menuen bruger nogle js script hvis det kan hjælpe
Avatar billede snepnet Nybegynder
30. august 2005 - 11:20 #7
mærkeligt .... nå men du har vel sådan set ikke behov for at bruge en serverknap til at åbne vinduet har du? - kan du ikke bare sætte en alm. html-knap ind, og så lave en :
onclick="window.open..... på den.
mvh
Avatar billede bjornhart Nybegynder
30. august 2005 - 11:24 #8
Jeg tror det er fordi jeg laver nogle dynamiske linkbuttons til hver fil. Til disse linkbuttons har jeg lavet en eventhandler, og jeg tror det er den der ødelægger det hele. Jeg har lavet en anden løsning uden serverknap som du forslår og det virker. Tak for hjælpen
send svar
Avatar billede snepnet Nybegynder
30. august 2005 - 11:30 #9
det var så lidt :o)
mvh
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester