Interesting discussion ... lets get started --

>1. The field should be designed well enough so that it provides
>instructions on how information should be entered into fields eg
>dd/mm/yy to avoid the message being displayed in the first place.
>2. Select the correct widget - pull down lists v text entry

I had to do this exact thing today on a web project.  For dates its nice to
be able to have drop down boxes for months, days and years (when the range
is small enough).  One annoying thing is that people can select February
31st unless you dynamicaly change the form elements (which only works in
Netscape 3, and is cumbersome to code).

>Questions
>
>1. Validation - should this be done at the field by field level or at
>the final submit?

I prefer using the onSubmit method to check the input before it is
submitted to the CGI.  Then if there are errors return focus and select the
entry field that the error is in.  Sometimes users might tab back and forth
between fields and enter parts of data at a time, then come back to that
widget after they inputed something else, so field by field checking can be
annoying (okay I admit I pretty much pulled that argument out of my arse :)

>2. Are there any good examples on the net? Using Javascript and pop-up
>dialogs?
There are several Javascript tutorials that explain how to do both of
these, but I have not seen anythinig revolutionary.

>3. How should mandatory fields be highlighted?
Maybe a different color with a message on top saying something like "Fields
that are labeled red are mandatory).  Another way may be using a different
BGCOLOR in a table cell.

>We are coinsidering the use of pop-up dialogs as opposed to HTML pages
>because it reduce the amount of pages that the user is required to
>navigate to and behave more as a secondary window like in a GUI
>envrionment.
I personally find this type of thing annoying.  New windows opening left
and right.  A help system in a separate window is a good idea, but if you
need some common element to guide the user through a series of pages maybe
you could use a static frame on one side of the page.  A good example of
this is the Netscape Administration Server for its Enterprise 2.0 line of
servers (in case you have not seen it, its a web interface for configuring
and maintaining a http server).

And in response to Graystreak:
>Forgive me for questioning your premises but isn't it a bit odd to talk
>about usability of a system that's confined to only one of the many tools
>that people could use to access your system?  javascript is Netscape-
>specific and while Netscape Navigator/Communicator run on most platforms
>do you really think people will not use Microsoft Explorer, Spyglass
>Mosaic, etc.?

This is is a question that haunts every web developer, but would you prefer
the whole Web stopped its evolution on a Lynx level? :)  I think Netscape
Navigator and MSIE are the only browsers you really need to worry about
these days (at least for a public site).  MSIE 3.xx has a clone of
JavaScript called JScript under which checking form elements works just
fine, and so does opening new browser windows.

If propery coded JavaScript is simply ignored by older browsers that do not
support it -- it does not make those pages unusable.  Why not provide the
added functionality to what now is the majority of users out there?

-- Ciao, Zoran

Zoran Svetlicic - Web Developer
Member Services International, Inc.
email: [log in to unmask]
old & lame web page: http://www.itlabs.umn.edu/~svet0001
new & unfinished web page: http://www.member.com/~zoran