Try move the FormValuesObserveField component inside the ResultsContainer and test it.
<webobject name = "ResultsContainer"> <webobject name = "FormValuesObserveField"> <div class="formInput">First Name: <webobject name = "FirstNameFilterText"/></div> <div class="formInput">Last Name: <webobject name = "LastNameFilterText"/></div> </webobject> ... (list of results) </webobject> On 2010-05-29, at 7:30 PM, Joe Kramer wrote: > Hi everyone, > > Sorry to be a bother, but I was wondering if anyone had any ideas for me on > this issue. If it would help, I could attach a small example app that > demonstrates this behavior. > > Thanks for any help, > > Joe Kramer > > CyberApps, Inc. > > On Thu, May 27, 2010 at 8:00 AM, Joe Kramer <[email protected]> wrote: > Hi all, > > I am trying to create a component that displays a list of people and then > lets the user filter this list based on a few criteria (first name, last > name, etc.). I haven't been using ajax until very recently, so I'm sorry if > this is an easy newbie question. The setup I have is I am observing multiple > fields (first name input, last name input) with the same AjaxObserveField > component and the AjaxObserveField updates an AjaxUpdateContainer (a > repetition with the qualified result list). When I type something in just > the last name input, everything works as expected. Same with just the first > name input. But if I've typed something in the last name input and then I > type something in the first name input, the variable storing the last name in > the component gets set to null (via a setter method) and, as a consequence, > the results are only qualified using the first name input. I have no idea > why the value is getting set to null and I'm hoping someone can shed some > light on what's going on and how to fix this issue. I'm using Webobjects > 5.4.3 and a version of Project WOnder that is about a month old. Here's the > relevant stuff from the component: > > <webobject name = "FormValuesObserveField"> > <div class="formInput">First Name: <webobject name = > "FirstNameFilterText"/></div> > <div class="formInput">Last Name: <webobject name = > "LastNameFilterText"/></div> > </webobject> > <webobject name = "ResultsContainer"> > ... (list of results) > </webobject> > > > FormValuesObserveField : AjaxObserveField { > observeFieldFrequency = "0.5"; > observeDelay = "0.5"; > updateContainerID = "results"; > } > > FirstNameFilterText : WOTextField { > value = firstNameFilter; > id = "firstNameFilter"; > } > > LastNameFilterText : WOTextField { > value = lastNameFilter; > id = "lastNameFilter"; > } > > ResultsContainer : AjaxUpdateContainer { > id = "results"; > } > > > In the java file I have: > > private String _firstNameFilter; > private String _lastNameFilter; > private NSArray _filteredArray; > > public String firstNameFilter() { > return _firstNameFilter; > } > > public void setFirstNameFilter(String value) { > _firstNameFilter = value; > _filteredArray = null; > } > > public String lastNameFilter() { > return _lastNameFilter; > } > > public void setLastNameFilter(String value) { > _lastNameFilter = value; > _filteredArray = null; > } > > public NSArray allClientsAfterFilter() { > if (_filteredArray == null) { > EOQualifier lastNameQual = null; > if (_lastNameFilter != null) { > lastNameQual = ERXQ.likeInsensitive("personInfo.lastName", > _lastNameFilter + "*"); > } else { > lastNameQual = ERXQ.likeInsensitive("personInfo.lastName", "*"); > } > EOQualifier firstNameQual = null; > if (_firstNameFilter != null) { > firstNameQual = ERXQ.likeInsensitive("personInfo.firstName", > _firstNameFilter + "*"); > } else { > firstNameQual = ERXQ.likeInsensitive("personInfo.firstName", "*"); > } > > > > EOQualifier qual = ERXQ.and(lastNameQual, firstNameQual); > _filteredArray = > EOSortOrdering.sortedArrayUsingKeyOrderArray(EOQualifier.filteredArrayWithQualifier(allClients(), > qual), null); > } > return _filteredArray; > } > > Thanks for any help on this. > > Regards, > > Joe Kramer > > CyberApps, Inc. > > > > > > > > > > > _______________________________________________ > Do not post admin requests to the list. They will be ignored. > Webobjects-dev mailing list ([email protected]) > Help/Unsubscribe/Update your Subscription: > http://lists.apple.com/mailman/options/webobjects-dev/farrukh.ijaz%40fuegodigitalmedia.com > > This email sent to [email protected]
_______________________________________________ Do not post admin requests to the list. They will be ignored. Webobjects-dev mailing list ([email protected]) Help/Unsubscribe/Update your Subscription: http://lists.apple.com/mailman/options/webobjects-dev/archive%40mail-archive.com This email sent to [email protected]
