Avatar billede vester Novice
27. november 2001 - 19:04 Der er 13 kommentarer og
2 løsninger

JavaScript menu med variabler fra ASP

http://www.dynamicdrive.com/dynamicindex1/topmen3/index.htm

Jeg har hentet denne udemærkede menu fra Dynamic Drive,
men da jeg ikke kender så meget til Java Script,
er jeg løbet ind i et problem.

Problemet er, at den side jeg er ved at lave,
skal laves i to versioner. En på Engelsk og en på Dansk.
Derfor har jeg lavet sproget som en sessions variabel i ASP.
(Enten Session(\"Sprog\")=\"Engelsk\" eller Session(\"Sprog\")=\"Dansk\")
Det virker også fint på siderne, men menuen giver problemer.
Jeg vil gerne have menuen til at indeholde dette, hvis der er valgt Engelsk:

    addSubmenuItem(\"./Default.asp\",\"Home\",\"_top\");
    addSubmenuItem(\"./News.asp\",\"News\",\"_top\");
    addSubmenuItem(\"./Contact.asp\",\"Contact\",\"_top\");
    addSubmenuItem(\"./Language.asp\",\"Language\",\"_top\");

Og dette, hvis der er valgt Dansk

    addSubmenuItem(\"./Default.asp\",\"Forside\",\"_top\");
    addSubmenuItem(\"./News.asp\",\"Nyheder\",\"_top\");
    addSubmenuItem(\"./Contact.asp\",\"Kontakt\",\"_top\");
    addSubmenuItem(\"./Language.asp\",\"Sprog\",\"_top\");


Kan jeg ikke, på en eller anden måde bruge de omtalte variabler, i forbindelse med dette???


VesTer

60 Points, til den der kan løse dette.
PS. Der er 5 kategorier, med hver 5 sider i menuen. Jeg kan ikke komme til at tjekke om det virker før i morgen, så der bliver ikke uddelt points før da.
Avatar billede nute Nybegynder
27. november 2001 - 19:10 #1
<script>
<%
if( Session(\"Sprog\")=\"Engelsk\" ) then
  %>
    addSubmenuItem(\"./Default.asp\",\"Home\",\"_top\");
    addSubmenuItem(\"./News.asp\",\"News\",\"_top\");
    addSubmenuItem(\"./Contact.asp\",\"Contact\",\"_top\");
    addSubmenuItem(\"./Language.asp\",\"Language\",\"_top\");
  <%
else if( Session(\"Sprog\") = \"Dansk\" ) then
  %>
    addSubmenuItem(\"./Default.asp\",\"Forside\",\"_top\");
    addSubmenuItem(\"./News.asp\",\"Nyheder\",\"_top\");
    addSubmenuItem(\"./Contact.asp\",\"Kontakt\",\"_top\");
    addSubmenuItem(\"./Language.asp\",\"Sprog\",\"_top\");
  <%
  end if
end if
%>
</script>
Avatar billede vester Novice
27. november 2001 - 19:15 #2
Kan jeg bare uden videre blande det VBscript(det er det når der er <% %> er det ikke???) ind i det JavaScript der er i den omtalte menu?
Avatar billede nute Nybegynder
27. november 2001 - 19:17 #3
Ja. Siden ASP blir behandlet på serveren så lan du bruke det til å kontrollere hva som blir sendt til klienten. hvis din session = dansk, så vil kun den \"danske menyen\" bli sendt til klienten
Avatar billede vester Novice
29. november 2001 - 13:31 #4
Det virker ikke. Den kommer med 7 forskellige fejl, når jeg gør som du foreslår.
Avatar billede nute Nybegynder
29. november 2001 - 13:34 #5
well...så er det nok resten av din kode det er noe galt med...det er ingenting i veien med det jeg har postet.

og det er utrolig enkelt å hjelpe når man ikke får annet å vite enn \"det virker ikke\"...
Avatar billede vester Novice
29. november 2001 - 15:31 #6
Det jeg tror går galt er, at den ikke får lov til at arbejde færdigt med .js filen.
Kender du det omtalte script?
Avatar billede nute Nybegynder
29. november 2001 - 15:37 #7
ligger dette inni en .js fil ?? jammen så er det ikke merkelig at du får feil. du kan ikke eksekvere asp inni en .js fil. så skal du legge hele innholdet av .js filen inn i en .asp fil og omslutte innholdet med <script> </script> tags...

jeg kjenner ikke det omtalte script, men jeg kjenner ASP og JavaScript...det er alt som behøves
Avatar billede vester Novice
29. november 2001 - 15:40 #8
Den .js fil er en af de 8 .js filer, der skal til for at få menuen til at køre, så jeg vil helst ikke til at rode alt for meget ved dem
Avatar billede nute Nybegynder
29. november 2001 - 15:44 #9
det skader ingenting å legge innholdet over i en .asp fil og inkludere den med asp-include på samme sted som den ellers er inkludert med script-include.

prøv, og du vil se at det kan la seg gjøre....
Avatar billede vester Novice
29. november 2001 - 20:51 #10
Det har jeg prøvet og nu er der fire forskellige fejl. Derfor får du lige hele filen:


//UDMv2.1.1
//**DO NOT EDIT THIS *****
if (!exclude) { //********
//************************

// *** for more information about the script ******************************
// *** see http://www.brothercake.com/dropdown/ ***************************
// *** or http://www.dynamicdrive.com/dynamicindex1/topmen3/index.htm ****


// *** POSITIONING AND STYLES *********************************************


var menuALIGN = \"left\";        // alignment
var absLEFT =     10;        // absolute left or right position (if not center)
var absTOP =     10;         // absolute top position

var staticMENU = false;        // static positioning mode (not Opera 5)

var stretchMENU = false;        // show empty cells
var showBORDERS = false;        // show empty cell borders

var baseHREF =    \"\";            // base path to .js and image files
var zORDER =     100;        // base z-order of nav structure (not ns4)

var mCOLOR =     \"#FAA001\";    // main nav cell color
var rCOLOR =     \"#8a4502\";    // main nav cell rollover color
var keepLIT =    true;        // keep rollover color when browsing menu
var bSIZE =     2;        // main nav border size
var bCOLOR =     \"#8a4502\"    // main nav border color
var aLINK =     \"#FFFFFF\";    // main nav link color
var aHOVER =     \"\";        // main nav link hover-color (not ns4)
var aDEC =     \"none\";        // main nav link decoration
var fFONT =     \"arial\";    // main nav font face       
var fSIZE =     13;        // main nav font size (pixels)   
var fWEIGHT =     \"bold\"        // main nav font weight
var tINDENT =     7;        // main nav text indent (if text is left or right aligned)
var vPADDING =     5;        // main nav vertical cell padding
var vtOFFSET =     0;        // main nav vertical text offset (+/- pixels from middle)

var vOFFSET =     -1;        // shift the submenus vertically
var hOFFSET =     -2;        // shift the submenus horizontally

var smCOLOR =     \"#F8C66F\";    // submenu cell color
var srCOLOR =     \"#8080AA\";    // submenu cell rollover color
var sbSIZE =     2;        // submenu border size
var sbCOLOR =     \"#8a4502\"    // submenu border color
var saLINK =     \"#000000\";    // submenu link color
var saHOVER =     \"\";        // submenu link hover-color (not ns4)
var saDEC =     \"none\";        // submenu link decoration
var sfFONT =     \"Arial\";    // submenu font face       
var sfSIZE =     13;        // submenu font size (pixels)   
var sfWEIGHT =     \"normal\"    // submenu font weight
var stINDENT =     5;        // submenu text indent (if text is left or right aligned)
var svPADDING = 2;        // submenu vertical cell padding
var svtOFFSET = 0;        // submenu vertical text offset (+/- pixels from middle)

var shSIZE =    0;        // submenu drop shadow size
var shCOLOR =    \"#cccccc\";    // submenu drop shadow color
var shOPACITY = 0;        // submenu drop shadow opacity (not ns4 or Opera 5)



//** LINKS ***********************************************************


// add main link item (\"url\",\"Link name\",width,\"text-alignment\",\"target\")
addMainItem(\"\",\"Koitz.dk\",120,\"center\",\"\");


    // define submenu properties (width,\"align to edge\",\"text-alignment\")

    defineSubmenuProperties(124,\"left\",\"left\");

   
    // add submenu link items (\"url\",\"Link name\",\"target\")
    addSubmenuItem(\"./Default.asp\",\"Home\",\"_top\");
    addSubmenuItem(\"./News.asp\",\"News\",\"_top\");
    addSubmenuItem(\"./Contact.asp\",\"Contact\",\"_top\");
    addSubmenuItem(\"./Language.asp\",\"Language\",\"_top\");

addMainItem(\"\",\"Broadcast design\",120,\"center\",\"\");

    defineSubmenuProperties(124,\"left\",\"left\");
   
    addSubmenuItem(\"./Documentary.asp\",\"Documentary\",\"_top\");
    addSubmenuItem(\"./Debate.asp\",\"Debate\",\"_top\");
    addSubmenuItem(\"./Other1.asp\",\"Other 1\",\"_top\");
    addSubmenuItem(\"./Other2.asp\",\"Other 2\",\"_top\");



addMainItem(\"\",\"Commercials\",120,\"center\",\"\");

    defineSubmenuProperties(124,\"left\",\"left\");

    addSubmenuItem(\"./Tops.asp\",\"Tops\",\"_top\");
    addSubmenuItem(\"./Kohberg.asp\",\"Kohberg\",\"_top\");
    addSubmenuItem(\"./ServiceRingen.asp\",\"Service Ringen\",\"_top\");


addMainItem(\"\",\"Graphics\",120,\"center\",\"\");

    defineSubmenuProperties(124,\"left\",\"left\");

    addSubmenuItem(\"./Books.asp\",\"Books\",\"_top\");
    addSubmenuItem(\"./Covers.asp\",\"CD\",\"_top\");
    addSubmenuItem(\"./Logos.asp\",\"Logos\",\"_top\");



addMainItem(\"\",\"Music\",120,\"center\",\"\");

    defineSubmenuProperties(124,\"left\",\"left\");

    addSubmenuItem(\"./Fensten.asp\",\"Fensten Forstyrrer\",\"_top\");
    addSubmenuItem(\"./Tv2oj.asp\",\"TV 2 / &Oslash;stjylland\",\"_top\");
    addSubmenuItem(\"./TvMidtVest.asp\",\"TV-MidtVest\",\"_top\");
    addSubmenuItem(\"./Frontalt.asp\",\"Frontalt\",\"_top\");

//********************************************************************

//**DO NOT EDIT THIS *****
}//***********************
//************************

Avatar billede nute Nybegynder
29. november 2001 - 20:55 #11
du mangler <script> i starten og </script> i slutten...
Avatar billede vester Novice
29. november 2001 - 21:02 #12
Det står i include koden og da jeg testede det som asp, var det indsat.

Jeg har fundet en anden løsning, med to forskellige includefiler afh. af sprog, men jeg vil da gerne give dig 30 points for hjælpen.

Hvis det er ok, så svar lige igen

VesTer
Avatar billede nute Nybegynder
29. november 2001 - 21:10 #13
oki...takk...:-)
Avatar billede vester Novice
29. november 2001 - 21:12 #14
Du plejer jo at have ret, så tak for hjælpen
Avatar billede nute Nybegynder
29. november 2001 - 21:14 #15
nåja...jeg tar også feil ;-)
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
Kurser inden for grundlæggende programmering

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