Home What's New
User Manual
|
Chapter 5. Progress Bar
Introducing the HTML-based Progress Bar
The progress bar is implemented using nothing but HTML and client-side JavaScript. No ActiveX controls or Java applets
are used. A typical progress window looks like this:
The layout of the progress window is fully customizable. You can move around
the progress bar and numeric indicators, change captions, add custom logos, etc.
Step 1. If your upload form is located in an .HTML file, you should make it into
an .ASP file as some ASP script needs to be added to that file.
Step 2. At the top of your form file (above the actual form), place the following code:
This code is responsible for creating a unique progress ID which connects
the page containing the upload form with the progress indicator
and upload script.
Step 3. Add the following JavaScript function to your form file below
the ASP fragment of Step 2. You may place it between the <HEAD>...</HEAD> tags.
The function ShowProgress() is responsible for opening the progress bar window
upon submission of your upload form. You may need to change the line
if (document.MyForm.FILE1.value != "" || document.MyForm.FILE2.value != "" || document.MyForm.FILE3.value != "")
according to your own form name and the names of your file item(s). In our example,
the form name is MyForm, and the file items are FILE1, FILE2 and FILE3.
Step 4. Add an extra parameter to the ACTION attribute of your
upload form, as follows:
<FORM NAME="MyForm" METHOD="POST" ENCTYPE="multipart/form-data"
Step 5. Add an OnSubmit attribute to your upload form
which calls the ShowProgress() routine added in Step 3, as follows:
<FORM NAME="MyForm" METHOD="POST" ENCTYPE="multipart/form-data"
Step 5. Make sure the files FRAMEBAR.ASP, BAR.ASP, and NOTE.HTM are located
in the same directory as your form file. FRAMEBAR.ASP contains the main
frameset for the progress indicator. Under IE, it invokes the file BAR.ASP
within an <IFRAME>. Under Netscape, it invokes the files BAR.ASP and NOTE.HTM
within a regular <FRAMESET>. You only need to modify
the files BAR.ASP and NOTE.HTM to customize your progress indicator.
We do not recommend making any changes to the file FRAMEBAR.ASP, unless
you need to change the size of your progress bar.
Step 6. Add the following line to your upload script
right after the CreateObject line:
...
This tells the UploadManager object the progress ID of the current
upload, thereby connecting it to the progress window.
The sample files progress.asp and progress_upload.asp demonstrate a simple
progress bar-enabled upload system.
Click the link below to run this code sample:
http://localhost/aspupload/05_progress/progress.asp
All other modifications involve the method UploadProgress.FormatProgress
called in the file BAR.ASP.
The method FormatProgress expects the following parameters:
ProgressID
ProgressID is a unique ID passed to the file BAR.ASP via the PID variable.
BarColor is the color of the progress bar. By default, this value is "#0000F7".
Iteration will be covered later.
Format is a string containing special characters (described below)
which controls the HTML layout of the progress window.
By default, this value is
"%TUploading files...%t%B3%T%R left (at %S/sec) %r%U/%V(%P)%l%t"
The format string may contain the following special characters:
%T - the beginning of an HTML table (<table><tr><td>)
%Bn - the progress bar; n indicates the number
of percentage points per progress square. Our sample uses %B3.
For a solid progress bar, use %B0.
The following special characters are placeholders for various
numeric values:
%E - elapsed time
The code samples progress1.asp, BAR1.ASP and FRAMEBAR1.ASP
demonstrate a customized progress bar which displays a logo.
The following changes were made to the original files:
barref = "framebar1.asp?to=10&" & PID
winstyle = "dialogWidth=375px; dialogHeight:180px; center:yes";
<IFRAME src="bar1.asp?PID=...
frameborder=0 framespacing=10 width=369 height=115></IFRAME>
"<CENTER><IMG SRC=logo.gif></CENTER>%TUpload Progress%t%B3%T%R left (at %S/sec) %r%U/%V(%P)%l%t"
http://localhost/aspupload/05_progress/progress1.asp
This parameter can be changed, if necessary. The value 10 is passed to the
progress bar via the to (time open) variable, as follows:
barref = "framebar1.asp?to=10&" & PID
This line of code is located in the top portion of your upload form file
(in our case, progress.asp and progress1.asp).
Copyright © 1998 - 2001 Persits Software, Inc. All Rights Reserved AspUpload® is a registered trademark of Persits Software, Inc. Questions? Comments? Write us! |