A while back, the company I work for tasked me with coming up with a
better way to move through a listing of forms on our Intranet.  The
way it was done before involved two identical files being maintained
simultaneously, one sorted by the form ID (AA0001) and the other by
name.  The list of forms is nothing to sneeze at ... the first page
includes a list of over 1800 forms.

My first stab at a solution moved everything into a single unordered
list.  I was able to assign classes to each list item for the alpha
character, the ID and type.  Clicking on the appropriate links would
show only those items which you selected.  I also plugged in Rik
Lomas' awesome QuickSearch plugin to quickly search the list.  The
only drawback was that the group responsible for maintaining the list
of forms had to choose whether they wanted the list sorted by name or
form ID.  They chose name.  Last week though, they decided that wasn't
good enough and they needed to be able to sort by either name or form
ID, so I've been handed this project again and told to make it work
more to their liking.  A table would break from the way they've
organized these forms for years now, so they're really not interested
in something like that, so it'd really need to be a list.  The forms
need to be able to be sorted alphabetically by name or form ID as well
as organized by category.

My first idea was to build a big (and I mean BIG) JSON file that would
store all the information for these forms.  I'd then be able to parse
through the JSON object and build the list on the fly based on what
they clicked.  Of course, we're talking about a JSON file that'd
probably be over 2000 lines and would have to be parsed every time
they click something (I'm not sure if I could call in the JSON file
and have it available instead of using $.getJSON).  Then there's the
issue of searching.  Obviously QuickSearch works great, but how am I
going to search through a static file without throwing everything on
to the page?

As you can see, I've begun brainstorming some ideas, but I'd really
love to hear what other solutions come to mind for you guys.  Any
ideas you have would be awesome.  Thanks!


David

Reply via email to