Avatar billede snakeeye Nybegynder
29. august 2006 - 12:04 Der er 8 kommentarer og
1 løsning

Ved load af side

Jeg har en side som vil tage alt imellem 1sec og 1time og loade alt afhængig af hvad det er den skal lave. Det er ikke det som er problemet, men det jeg gerne vil have er at få udskreven en status med hvor langt den er kommet.

Jeg har engang lavet det i ASP hvor jeg har tilføjet en enkelt linie i toppen af siden og så jeg får udskreven en eller flere meddedelser mens siden loader. Mit problem er hvad er det nu den her funktion hedder.
Avatar billede dr_chaos Nybegynder
29. august 2006 - 12:05 #1
response.write måske ?
Avatar billede softspot Forsker
29. august 2006 - 12:10 #2
Response.Flush sender det output som er i bufferen pt.

Det kræver naturligvis at siden er buffered... :)
Avatar billede snakeeye Nybegynder
29. august 2006 - 12:45 #3
dr_chaos, hvordan skal response.write hjælpe mig når siden stadig loader?

Softspot, uhmm måske, Resposen.Flush vil måske virke, men hvordan skal jeg gøre sådan at min side er buffered ?

Mit problem er stadig at jeg har nogle meddedelser som jeg vil se, men kan ikke få lov til det før siden er loaded færdigt
Avatar billede thesurfer Nybegynder
29. august 2006 - 13:26 #4
Jeg går ud fra, at du f.eks. har en loop eller henter data fra en databasen, eller ligende..

Jeg vil tro, at man kan gøre det ved hjælp af:
- Response.Buffer = True
- Response.Flush
- Div (HTML)
- JavaScript

Eksempel:
<%
Response.Buffer = True ' sættes i toppen af dokumentet

function aspSkrivBesked(asp_txt)
response.write "<script type=""text/JavaScript"" language=""JavaScript"">SkrivBesked('" & asp_txt & "');</script>"
response.flush
end function
%>

<div id="besked"></div>

<script type="JavaScript" language="JavaScript">
function SkrivBesked(js_txt)
{
document.getElementById("besked").innerHTML = js_txt;
}
</script>
<%
' Div'en og JavaScript kode sendes til browseren:
Response.Flush
%>

... noget halløj her
<% aspSkrivBesked("Nu er jeg nået så langt") %>
læs profil ind...
<% aspSkrivBesked("Nu er profilen læst ind") %>
læser nyheder..
<% aspSkrivBesked("Nu indlæses nyhederne læst ind") %>


Resulterer i, at der 1 bestemt sted skifter mellem disse beskeder:
Nu er jeg nået så langt -> Nu er profilen læst ind -> Nu indlæses nyhederne


Hvis man ikke brugte JavaScript til at skifte teksten, vil det se sådan ud:

Nu er jeg nået så langt
Nu er profilen læst ind
Nu indlæses nyhederne

Man kan altså se alle beskederne.. Denne effekt kan man også lave med java script:

document.getElementById("besked").innerHTML += js_txt;

Jeg har tilføjet et "+" til "="..
Avatar billede snakeeye Nybegynder
30. august 2006 - 10:58 #5
Okay, ser ud til at virke. Ikke præcist den løsning som jeg søgte men virker på samme måde. Smid et svar hvis i vil have de få point som jeg har givet for dette...
Avatar billede softspot Forsker
30. august 2006 - 11:02 #6
Ingen point til mig for dette spørgsmål - ellers tak :)
Avatar billede thesurfer Nybegynder
30. august 2006 - 11:16 #7
Ingen points til mig, tak.
Avatar billede dr_chaos Nybegynder
30. august 2006 - 11:28 #8
og heller ingen til mig.
Mit response.write er intet værd. mener at det må være thesurfer som skal have dem.
Hvis han ikke vil skal du selv tage dem.
Avatar billede snakeeye Nybegynder
30. august 2006 - 13:01 #9
okay, jeg takker for mine egne point så :D
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

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