We've developed our billAnywhere app using extjs. Full features js and Ajax framework. If you are interested we would be more than happy to provide you with some services.
Thanks George billAnywhere.com Invoicing made easy Sent from my iPhone On Nov 10, 2009, at 12:52 PM, Anthony Humphreys <anth...@humphreys.org> wrote: Brian, I mean you no disrepect, but I'm not sure I like this idea for a few reasons. You'll have to do a much better job of convincing me. Best practices suggest that AJAX should be cacheable; however dynamic lookups from the server aren't cacheable. We are looking to move towards AJAX at some point, but we have not yet decided on what, if any, framework will work best for us. Using script.aculo.us & Prototype.js for this one feature seems very much overkill. About 10% of of our web users are still on dial-up. Adding another 136kb download for the Prototype.js file and still more kb for the script.aculo.us files will further slow things down for these users. The idea is to make things (seem) faster, not make our pages load even slower. I'd be more tempted to break the list into separate lists for each province and use AJAX to load the file that has only the list of cities in that province. But even for this approach, the script(s) may laod after the form is rendered, so a strategy must be taken to handle changes to the form before the script(s) have a chance to load, which is what I was aksing about. Lastly, our server loads are getting higher on our machine as we get more participation. Our emphasis on speed this year has actualy encouraged more people to participate; therefore more people are using our server. We've already added load balancing Witango servers to handle the increases in load, and we are monitoring continuing to monitor the situation closely. Asking the Witango servers to also handle AJAX queries would only add to the load that the Witango/DBMS server already has, and _could_ erode the many gains we've already made. I'd prefer to offload the duty off the Witango server as much as possible unless there's very high usuability gains. The autocompleter seems more like a nice to have than a must have as the users can already type the first few characters of the city's name to find the city when the focus is on the city pulldown. Standard form elements work better, especially in microbrowsers and browsers without JavaScript. It not clear how this would work in a non-JavaScript browser. On 11/10/09, Brian Humes <bhu...@johnson-rauhoff.com> wrote: Hi Anthony, Another option would be to use an autocompleter. Make the city field a text input, but as the user starts typing a little list of possible entries appears below the text input. The user can either mouse click on one or use arrow keys to select one. The list of possible entries is pulled dynamically using ajax. I've used this one from scriptaculous. Works great. All of the instructions are here: http://wiki.github.com/madrobby/scriptaculous/ajax-autocompleter Hope this helps. Brian Humes Director, Interactive JohnsonRauhoff 269-428-9257 (direct) 269-428-3377 (main) 269-428-3312 (fax) www.johnson-rauhoff.com bhu...@johnson-rauhoff.com On Nov 10, 2009, at 11:20 AM, Anthony Humphreys wrote: Hi all, We had a problem where people were putting in inaccurate information for the "city." We solved that problem by using some javascript and limiting the choice of cities by using a pull-down. The list of cities is limited by the choice of province. This introduced a new problem, the page took a very long time to load as the sript and array of cities was being loaded by the browser. We solved this by moving the JS script and the JS city array (city list) into an external JS file which is loaded after the form is pushed to the browser. Now the form sppears to load very quickly, as the script/array loads after the browser has already rendered the form. However, this introduces a new problem: the form can changed by the user before all the scripts/arrays have loaded. I seem to have a few options avaialable to me to solve this, but I was wondering how you have solved this dilemma. Option One: Disable the province/city pulldowns until the all the scripts/arrays load. Option two: Only populate the province pulldown with the current province; load the rest of the provinces with the whole province list only when all the scripts/arrays are loaded Option three: Save the initial state of the pulldowns; once all of the script/arrays are loaded compare the intial state against the current state of the form and make the appropriate updates. Other options: Other strategies you have used but that I've not listed. Thanks! Anthony - ________________________________________________________________________ TO UNSUBSCRIBE: Go to http://www.witango.com/developer/maillist.taf ________________________________________________________________________ TO UNSUBSCRIBE: Go to http://www.witango.com/developer/maillist.taf ________________________________________________________________________ TO UNSUBSCRIBE: Go to http://www.witango.com/developer/maillist.taf ________________________________________________________________________ TO UNSUBSCRIBE: Go to http://www.witango.com/developer/maillist.taf