Avatar billede Slettet bruger
13. februar 2003 - 15:37 Der er 20 kommentarer og
1 løsning

Include fil i js fil

Kan man inkludere en asp fil i en js. fil.

Mit problem er at min drop down menu henter menuerne i en inkluderet javascript fil (js fil) men da jeg gerne vil oprette menuerne dynamisk altså fra en database vil jeg gerne køre en løkke og udskrive resultatet til js filen.

Min js fil ser således ud:

function mmLoadMenus() {
  if (window.mm_menu_0211143628_0) return;
  window.mm_menu_0211143628_0 = new Menu("root",140,18,"Arial, Helvetica, sans-serif",10,"#ffffff","#000000","#99a6bb","#dde1e8","left","middle",3,0,1000,-5,7,true,true,true,0,false,false);

Her vil jeg inkludere det nedenstående i en asp fil
-------------------------------------------------------

  mm_menu_0211143628_0.addMenuItem("rykkkyukuyk","window.open('link2', 'main');");
  mm_menu_0211143628_0.addMenuItem("Menuer og undermenuer","window.open('link3', 'main');");
  mm_menu_0211143628_0.addMenuItem("Websider","window.open('link4', 'main');");
--------------------------------------------------- 
 
  mm_menu_0211143628_0.hideOnMouseOut=true;
  mm_menu_0211143628_0.menuBorder=1;
  mm_menu_0211143628_0.menuLiteBgColor='#99a6bb';
  mm_menu_0211143628_0.menuBorderBgColor='#99a6bb';
  mm_menu_0211143628_0.bgColor='#000000';

  mm_menu_0211143628_0.writeMenus();
}
Avatar billede bearhugx Nybegynder
13. februar 2003 - 15:41 #1
det korte svar : JA .. Det kan du godt...
Du skal bare sørge for at outputtet af din ASP-fil er normal javascript...
Avatar billede bearhugx Nybegynder
13. februar 2003 - 15:48 #2
og så inkluderer du den ligesom en hvilken som helst anden javascript-ressource :
<script language="javascript" src="http://dit-domaene.dk/script.asp">
Avatar billede Slettet bruger
13. februar 2003 - 15:49 #3
og du er med på at dette skal ske inde mit i en js.fil altså ren javascript kode????
Avatar billede nikolajdu Nybegynder
13. februar 2003 - 16:04 #4
For en god ordens skyld så må man ikke skrive <script> inde i javascript kode, så vi escaper den lige.

document.write('<\script language="javascript" src="http://dit-domaene.dk/script.asp">')

/Nikolaj
Avatar billede nikolajdu Nybegynder
13. februar 2003 - 16:04 #5
Og et svar :))
Avatar billede olebole Juniormester
13. februar 2003 - 17:57 #6
<ole>

Nikolaj, hvorfor siger du aldrig til, _inden_ du ryger det der  :D

/mvh
</bole>
Avatar billede nikolajdu Nybegynder
13. februar 2003 - 18:52 #7
Ole - Hvem har røget hvad her????
Avatar billede nikolajdu Nybegynder
13. februar 2003 - 18:54 #8
well anyway bør det jo  være type="text/javascript" i stedet for language...
Avatar billede olebole Juniormester
13. februar 2003 - 19:40 #9
Hehe ... det var nu ikke det, Nikolaj  :)
Det er ikke JS, der skal udskrive ... det er ASP, der skal udskrive en JS-fil, der skal inkluderes med:
  <script type="text/javascript" src="http://dit-domaene.dk/script.asp">
Så der er ikke noget, der skal escapes  ;o)
/mvh
Avatar billede nikolajdu Nybegynder
13. februar 2003 - 22:08 #10
ohhhh.... so sorry....
Avatar billede olebole Juniormester
13. februar 2003 - 22:23 #11
np  ;o)
Avatar billede Slettet bruger
17. februar 2003 - 09:53 #12
Ole Bole ->

Det er inde mit i min js fil som allerede er inkluderet på en anden side at der skal inkluderes et par linjer javascript kode. Dette for at kunne lave et gennemløb af menuer til drop down menuer.

Så <script> er altså ikke mulig hvorfor Nikolaidu´s forslag med document.write lød fornuftig desværre virker den ikke...Udskriver bare siden men med fejl omkring at objektet understøtter bla bla...

Sådan ser min asp inkluderede fil ud:

<%
response.write("mm_menu_0211143628_0.addMenuItem('rykkkyukuyk',""window.open('link2', 'main');"");")
response.write("mm_menu_0211143628_0.addMenuItem('rykkgjlklgkuyk',""window.open('link2', 'main');"");")
%>


Den skal selvfølgelig ændres når det skal køre men kan bruges til test.
Avatar billede bearhugx Nybegynder
17. februar 2003 - 10:03 #13
Jeg foreslår, at du gemmer menu-"koden" i en JS-fil - og menu-strukturen (altså links, labels osv) i en anden fil, som du så kan generere dynamisk ... Det kunne f.eks. være en xml-fil (som så kan parses ved hjælp af DOM) eller ini-fil - eller som JS-fil, hvor du initialiserer et objekt til at indeholde din menus struktur...

Dvs. en JS/XML/INI fil, som ikke indeholder andet end definitionen af din menu - så behøver du ikke at "indsætte" vilkårligt i en eller anden JS-fil - så skal du bare sørge for at link til den (og så lave noget kode, som parser filen...)

Håber du forstår, hvad jeg mener...
Avatar billede Slettet bruger
17. februar 2003 - 10:38 #14
jeg tror bare gerne jeg vil have lavet det som jeg beskrev i spg.

hvis det da kan lade sig gøre :-)
Avatar billede Slettet bruger
17. februar 2003 - 11:27 #15
bearhugx->

Hvis du overhovedet vil hvor mange point skal jeg så give for det du omtaler?
Avatar billede Slettet bruger
17. februar 2003 - 12:58 #16
ARRRRRRRRRRG

Det kan da ikke passe... Hvorfor kan man ikke gøre det???
Avatar billede Slettet bruger
17. februar 2003 - 15:00 #17
nuvel!!!
Avatar billede bearhugx Nybegynder
17. februar 2003 - 19:56 #18
jean... jeg er igang med at lave en løsning... Jeg ligger den ud i public domain når jeg er færdig... så skal jeg nok sende et link :-=)
Avatar billede olebole Juniormester
17. februar 2003 - 22:18 #19
jean >> Der er ikke noget i det, du skriver, der gør, mit forslag ikke lader sig gøre. Jeg er ikke helt sikker på, hvad det er, du ikke har forstået ... det er en meget udbredt måde at løse problemet på
/mvh
Avatar billede Slettet bruger
18. februar 2003 - 08:06 #20
Bearhugx -> Jeg glæder mig

OleBole -> Det du skriver er ikke det jeg skal gøre. Jeg skal inkludere en asp fil der skal generere en stump kode til en allerede eksisterende js fil. Dette har jeg forsøgt at gøre med det ideer der er kommet her fra eksperten uden held. Har jeg misforstået et eller andet må du hellere end gerne uddybe.

Mvh jean
Avatar billede olebole Juniormester
18. februar 2003 - 12:35 #21
Hmmm .... jeg er stadig ikke sikker på præcist, hvad du vil og hvordan det er smartest at gøre det  :)
Er du i øvrigt overhovedet sikker på, du kan lave en window.open() på det sted? Har du prøvet - uden at skrive det med ASP? Jeg tvivler nemlig stærkt på, du kan.
/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
Vi tilbyder markedets bedste kurser inden for webudvikling

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