I have an invoice application that requires the user to select a user object named "creator" from a list of over 100k users. Since there are so many users a traditional select box with 100k options is out of the question. An AJAX enabled select box is out of the question too due to the types of clients that will use this application. I think it should work something like this... -User creates invoice and fills out some fields (e.g. description) -User clicks "select creator" link that takes them to a user select page -On the user select page they can type in a partial name, clicks submit, and the matches are returned. When they find the one they want they click a "select user" link. This link returns them to the invoice page, populates the "creator" field and keeps all of their previous edits (e.g. description). Ideally I would like to construct this "choose user" functionality so that it could be reused for other applications (e.g. a purchase order application has a "creator" field as well). Any thoughts on how to best accomplish this?
On 8/30/05, JT <future429-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> wrote:> I have an invoice application that requires the user to select a user object > named "creator" from a list of over 100k users. Since there are so many users a > traditional select box with 100k options is out of the question. An AJAX enabled > select box is out of the question too due to the types of clients that will use > this application. I think it should work something like this... > > -User creates invoice and fills out some fields (e.g. description) > -User clicks "select creator" link that takes them to a user select page > -On the user select page they can type in a partial name, clicks submit, and the > matches are returned. When they find the one they want they click a "select > user" link. This link returns them to the invoice page, populates the "creator" > field and keeps all of their previous edits (e.g. description). > > Ideally I would like to construct this "choose user" functionality so that it > could be reused for other applications (e.g. a purchase order application has a > "creator" field as well). > > Any thoughts on how to best accomplish this?I''ve got the same problem with one of my forms. The solution which I feel I''ll go for is to create a sort of simple search field. You could use AJAX to make it very user friendly. You could do the AJAX autocomplete type search field. You could also have it setup so that the user types in part of the customers name, and then when they go to save the invoice, it asks them to choose/confirm the correct customer from a list. Or they could type in part of the name, click a button for a pop-up window of matching customers. James
James Earl <jamesd.earl@...> writes:> You could do the AJAX autocomplete type search field. You could also > have it setup so that the user types in part of the customers name, > and then when they go to save the invoice, it asks them to > choose/confirm the correct customer from a list. Or they could type > in part of the name, click a button for a pop-up window of matching > customers. > > James >AJAX is out of the question for me due to the clients (e.g. netscape 4.x browsers, mobile phones, pdas, etc).
For some tiny percentage of NN4 users you have to make everyone else''s experience worse? Consider how much more efficiently and accurately *most* users would complete this form with Ajax autocomplete. You can pretty easily dump your NN4 users to a more cumbersome screen for selecting the value. Since the autocomplete thing is so trivial to code up, why not show it to your client and explain the trade-offs? (And I certainly hope you''re not letting people fill out a form of this complexity on PDAs and on mobile phones! Right? )>> You could do the AJAX autocomplete type search field. You could also >> have it setup so that the user types in part of the customers name, >> and then when they go to save the invoice, it asks them to >> choose/confirm the correct customer from a list. Or they could type >> in part of the name, click a button for a pop-up window of matching >> customers. > > AJAX is out of the question for me due to the clients (e.g. > netscape 4.x > browsers, mobile phones, pdas, etc).
Andrew Otwell wrote:> For some tiny percentage of NN4 users you have to make everyone else''s > experience worse?Consider why those users exist - it''s usually not by choice. There do exist companies that won''t change something once it''s working. This includes browsers and operating systems. It may well be the case that the *entire* user base of the intended app comprises NN4 users, or even mobile users. The public browser demographic doesn''t necessarily match a given target market. Or consider another factor: the client has specified that the app *must* be usable by NN4 and mobile users. In that case there''s really not much choice. Personally, I''d use a paginated index with an AJAX shortcut for this, but that''s just me... -- Alex