JaarMedlem sedan juli 2001434 inlägg Jag har en sida som tar lite tid och ladda och vill att man ska få upp "sidan laddas" eller liknande meddelande.
Finns det något smart sätt att göra det på? Ska man skriva till response, flusha, och sen skriva det andra. Eller måste man gå till en sida som visar meddelandet, laddar allt, lägger det i sessionen (eller liknande) och sedan går till en sida som visar vad man laddat...
Någon som har nån bra tutorial eller likande, eller har gjort en liknande lösning själv?
spangoMedlem sedan juni 20008 205 inlägg Vill du att det ska funka i IE får du använde dig av JavaScript. I Mozilla kan man använda mime-typen multipart/x-mixed-replace, bifogar ett exempel som jag gjorde som en uppgift på en kurs i plugget. Den använder en stödklass tillhörandes en bok från O'Reilly, Java Servlet Programming.
\r Inga attachments här inte. Se Viktors länk i stället.
ViktorMedlem sedan aug. 20021 752 inlägg spango, är det inte den här du menar, http://www.webforum.nu/showthread.php?s=&threadid=92200&forumid=166. Koden i ditt arkiv använder inte någon stödklass utan ser ut att vara uppgift 6a, inte 6b :)
/Viktor
JaarMedlem sedan juli 2001434 inlägg Javascript? Blir inte det lite knepigt att få till med tanke på att det exekverar på klienten, och det kommer ju inte över till klienten förens jsp-scriptet har exekverat klart...
Grejjen är att det finns många ingångar till samma sida, så jag kan inte lägga javascriptet på sen sidan som anropar (blir för mycket jobb) utan vill ha något på sidan som laddas. Kanske man skulle kunna fixa det med nån form av filter eller liknande, eller filter kanske inte "får" skriva till responsen? Kan inte det där med filter :)
spangoMedlem sedan juni 20008 205 inlägg Viktor> :r Kanske borde kolla vilka filer jag skickar iväg i fortsättningen...
Jaar> Man kan ha ett lager som täcker hela sidan som tas bort av ett script som körs "onLoad".
JaarMedlem sedan juli 2001434 inlägg Fast för att lagret ska visas så måste ju det komma ett response. Och det gör det ju inte förens jag hämtat min data ...
Exempel
<%
// Db-anrop som tar aplång tid :)
Vector massaJobbigaKlasser = db.getMassaJobbigaKlasser();
%>
<html>
<head>...</head>
<body onLoad="uloadLayer()">
<div class="biggusDickus">Laddar</div>
<%
for(int i = 0; i < massaJobbigaKlasser.size; i++)
{
out.println( ((JobbigaKlass)massaJobbigaKlasser.get(i)).getField() + "<br>");
}
%>
</body>
</html>
Har jag fel om jag säger att det kommer ta lika lång tid innan diven visas som det tar innan alla rader visas?
spangoMedlem sedan juni 20008 205 inlägg Jo, det förstås. om du inte väljer att plutta ut den första delen av sidan innan du gör databasanropet.
JaarMedlem sedan juli 2001434 inlägg Hur gör man det? Vet att folk pratat om att flusha ut det, och man jobbar ju rätt mycket med det när man håller på o pipar i linux. Men jag har aldrig gjort det i jsp script. response.flush() ?
*kan iof kolla upp det, men man är ju alltid så lat*