I do have this whole component wrapped in a WOForm.  In addition to the
fields I described there are a couple of WOSubmitButtons that submit the
whole form (cancel and save type actions).

Thanks,

Joe Kramer

CyberApps, Inc.

On Sat, May 29, 2010 at 10:45 AM, Ricardo J. Parada <[email protected]> wrote:

> Do you have a WOForm wrapping the text fields?
>
>
> On May 29, 2010, at 12:56 PM, Joe Kramer wrote:
>
> Hi Farrukh,
>
> Thanks for your reply.  I moved the AjaxObserveField inside the
> AjaxUpdateContainer, but I'm still getting the same behavior where values
> that haven't just been set are set to null instead of maintaining their
> previous values.  Any other ideas?
>
> I can hack a solution where I just won't do anything in the setter if the
> value is being set to null, but the issue there is if the user deletes all
> the text in an input field, then the result list will not get updated to
> display all the values.
>
> Thanks again for any help,
>
> Joe Kramer
>
> CyberApps, Inc.
>
> On Sat, May 29, 2010 at 9:35 AM, Farrukh Ijaz <
> [email protected]> wrote:
>
>> 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/rparada%40mac.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]

Reply via email to