Thank you very much for your reply! Lots of great ideas :). I will let you know how it all turns out.
As for using the database to do the filtering, that is a great idea! Yes, I have full control over the client class so it shouldn't be a problem. Best Regards! On May 20, 7:45 am, Shawn <sgro...@open2space.com> wrote: > I don't see anything tooo odd here. Here's what I would suggest though: > > 1. Call the autocomplete function a few times manually. Put the URL to > it in the browser's address bar and load the page a few times (you'll > need to switch your code to use $_GET though). Try to mix up the speed > of reloads, the data being passed, etc. IF you see any blank pages, > then you know the server side code is where the problem is at. But if > you always see output, continue debugging.... > > 2. Temporarily remove the .result() method just to ensure that is not > causing confusion somewhere. Commenting it out should be good enough. > > 3. Make sure you are using the most recent stable version of the plugin. > > 4. In your PHP code, where you are checking for no 'q' value and just > exit the function.... replace that return with something like > > echo "no criteria|0"; > return; > > Just to see if this condition is the problem area. Also, I'd probably > change the condition to be if (empty($q)) - which is a slightly > better check. That's a style thing though, so up to you.... > > Now, with that out of the way... Your PHP code seems odd to me. Why > pull back ALL clients and then do a string comparison to sort out what > to show or not? It is MUCH faster/more efficient to let the database do > that filtering for you. Do you have control of the Client class? If > so, can you add a search method that takes the 'q' value as a criteria > for the name? But, the code as is *should* run, so take my comments as > constructive observations... :) > > Shawn > > MeanStudios wrote: > > Shawn, yes, that is the plugin I am talking about. In Jorn's blog > > post on Autocomplete he said to post here with [Autocomplete] in the > > subject if having problems. > > > Here's the code I'm using: > > > $("#client_name").autocomplete("/ac/get_clients/", { > > scroll: true, > > scrollHeight: 300, > > autoFill: true, > > cacheLength: 1, > > max: 20, > > matchContains: false > > }); > > > I also have a .result(function(){}); running after that as well so I > > can populate a form with the returned data from the autocomplete. > > I'm using CodeIgniter as my php framework utilizing a library called > > DataMapper which is an implementation of an ORM. Here's the function > > I'm using to return the data: > > > function get_clients() > > { > > $c = new Client(); > > $c->get(); > > $q = strtolower($_POST['q']); > > if ( ! $q) > > return; > > foreach ($c->all as $client) { > > if (strpos(strtolower($client->name), $q) !== false) { > > echo "$client->name|$client->id\n"; > > } > > } > > } > > > On May 19, 5:36 pm, Shawn <sgro...@open2space.com> wrote: > >> There are a few different autocomplete plugins out there. I'll assume > >> you are using the one found > >> athttp://bassistance.de/jquery-plugins/jquery-plugin-autocomplete/(which > >> is the one documented at docs.jquery.com) The author, Jorn Zaefferer, > >> is on this list often.... > > >> I've seen oddities like this with the plugin, but it pretty much always > >> was a problem in how I was implementing the plugin. Or a potential > >> problem with my server side code or local network. But I tend to do > >> more than the absolute basics too, so I always assume it's my fault > >> first.. :) > > >> Short of seeing some sample code, I'm not sure how much more I can help > >> out... But hope that points you towards the solution somewhat. > > >> Shawn > > >> MeanStudios wrote: > >>> Greetings, > >>> I'm currently using this awesome plugin for my web app but I'm having > >>> a bit of an annoying bug with it. It sometimes does not pull up any > >>> results when typing in. Like if I have something in the database with > >>> the name "March" and I type in "mar" it shows the little loading.gif > >>> but then disappears and doesn't give me any results. If I tab away > >>> and come back to it and try it again, then it will work. And even > >>> that doesn't make it work. Sometimes I have to totally refresh the > >>> page. I thought it might be the cache mechanism so I turned that off > >>> setting "cacheLength" to "1". > >>> Any other ideas as to why it sometimes works and sometimes doesn't?