Avatar billede plesner Nybegynder
15. april 2003 - 11:55 Der er 9 kommentarer

Refresh af en include

Hvis man har en typisk forside default.asp, hvor man includer følgende - top.asp/menu.asp/hoved.asp

--------

<div align="center">
  <table width="760" height="849" border="0" cellpadding="0" cellspacing="0">
    <tr valign="top">
      <td height="10" colspan="2">
        <!--#include file="top.asp" -->
      </td>
    </tr>
    <tr>
      <td width="110" height="648" valign="top">
        <!--#include file="menu.asp" -->
      </td>
      <td width="650" height="800" valign="top" bgcolor="#FFFFFF">
        <!--#include file="hoved.asp" -->
      </td>
    </tr>
  </table>

--------

menu.asp indeholder menupunkter, som (Hifi, surround, systemer) med dertilhørende underpunkter(cd-afspiller,dvd-afspiller osv.), der bliver vist ved at kalde f.eks. default.asp?menuitem=5
i menu.asp checkes der for denne værdi ved en request.querystring og undermenuen vises herefter.

Spørgsmålet er om det er muligt kun at "kalde"/refreshe menu.asp istedet for at den skal kalde hele hovedsiden - default.asp hvor menu.asp includes igen?

Det er muligt hvis man bruger frames, men kan det lade sig gøre uden, måske ved hjælp af javascript ?
Avatar billede mm12010 Nybegynder
15. april 2003 - 11:58 #1
<script type="text/JavaScript">
function opdater(){
  location.reload();
  }
Avatar billede fun22 Nybegynder
15. april 2003 - 11:58 #2
det tror jeg ikke du kan. Er det fordi at du ellers skal have mange menu filer, en til hver side?
Avatar billede madrich Nybegynder
15. april 2003 - 12:11 #3
Det kan ikke lade sig gøre .. hvis det er performance der er problemet, kan du jo prøve med at cache menu.asp
Avatar billede plesner Nybegynder
15. april 2003 - 12:20 #4
Det er egentlig fordi at det irriterer mig at hele siden skal genindlæses

idet man klikker på menupunktet, skal default.asp hentes igen, og brugeren sidder således og kigger på en blank skærm indtil hele siden er hentet ind, hvor menu.asp nu viser undermenuerne. Det man kan med frames er at kun menu.asp hentes (f.eks. target=leftframe) og derfor bliver ikke hele siden blank mens den indlæses, kun menu.asp.

Kan man måske lave noget der gør at <!--#include file="top.asp" --> og <!--#include file="hoved.asp" --> indlæses og vises først, før menu.asp hentes, da det er her forespørgslen skal køres og derfor her at det tager tid at hente ?
Avatar billede plesner Nybegynder
15. april 2003 - 12:47 #5
mm12010 hvordan vil du benytte funktionen/hvor skal den sættes ind ?
Avatar billede zyber Nybegynder
15. april 2003 - 13:41 #6
1.
Lav det i frames, evt. Iframes (dette understøttes dog ikke så godt af netscape)
2.
Hvis du ikke har så mange menupunkter kan du load det hele når siden vises og så skifte vha. javascript når brugeren klikker på et af menupunkterne.
Avatar billede plesner Nybegynder
15. april 2003 - 13:45 #7
Hmmm kan du give et eksempel på nummer 2.
Avatar billede mm12010 Nybegynder
05. august 2003 - 12:36 #8
lukketid?
Avatar billede mm12010 Nybegynder
05. august 2003 - 12:36 #9
self.location.reload(true);
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