You are not calling your own sub-component(s) in your example. Like I said, I 
don't have the problem if I simply call dynamic elements from WO/Wonder, I have 
the problem if I include my own sub-components, be them stateless or not.

> there is something weird, I tried yesterday a very similar stuff and no issues
> 
> <div id="cartView">
>       <wo:AjaxPing targetContainerID="totalUpdateContainer" 
> cacheKey="$cacheKey" frequency=1000 stop="false" />
>       <h1>Your cart</h1>
>       <div id = "cart">
>               <wo:form action = "$updateCart" multipleSubmit = "true">
>                       <table class="list">
>                               <tr>
>                                       <th class="image">Image</th>
>                                       <th class="title">Title</th>
>                                       <th class="quantity">Quantity</th>
>                                       <th class="price">Price</th>
>                                       <th class="total">Total</th>
>                                       <th class="remove">Remove</th>
>                               </tr>
>                               <wo:loop 
> list="$cartDisplayGroup.displayedObjects" item = "$aCartItem" index = 
> "$rowIndex">
>                               <tr> // AjaxUpdateContainer could be here but 
> cause obviously flickering on update
>                                       <td class="image"><wo:image 
> src="$aCartItem.product.image.thumbnail.fileUrl" /></td>
>                                       <td class="title"><wo:string value = 
> "$aCartItem.product.title" /></td>
>                                       <td class="quantity">
>                                               <wo:AjaxObserveField 
> updateContainerID = "$rowID" observeFieldFrequency = "1" fullSubmit = "true" >
>                                                       <wo:textfield 
> class="quantity" value = "$aCartItem.quantity" />
>                                               </wo:AjaxObserveField>
>                                       </td>   
>                                       <td class="price">€ <wo:string value = 
> "$aCartItem.frozenPrice" numberformat = "#0.00" /></td>
>                                       <td class="total">
>                                               <wo:AjaxUpdateContainer 
> elementName = "span" id="$rowID">€ <wo:string value = 
> "$aCartItem.totalDacPrice" numberformat = "#0.00" /></wo:AjaxUpdateContainer>
>                                       </td>
>                                       <td class="remove"><wo:link 
> action="$removeFromCart">Remove</wo:link></td>
>                               </tr>
>                               </wo:loop>
>                       </table>
>                       <wo:AjaxUpdateContainer id = "totalUpdateContainer" 
> style="margin-top:30px">
>                       <table class="list">
>                               <tr>
>                                       <td class="grandTotalText">TOTAL</td>
>                                       <td class="grandTotal">€ <wo:string 
> value = "$session.getAuthenticatedReseller.workingCart.totalPrice" 
> numberformat = "#0.00" /></td>
>                               </tr>
>                               <tr>
>                                       <td class="grandTotalText">TAXES</td>
>                                       <td class="grandTotal">€ <wo:string 
> value = "$session.getAuthenticatedReseller.workingCart.taxes" numberformat = 
> "#0.00" /></td>
>                               </tr>
>                               <tr>
>                                       <td class="grandTotalText">GRAND 
> TOTAL</td>
>                                       <td class="grandTotal">€ <wo:string 
> value = "$session.getAuthenticatedReseller.workingCart.totalPriceWithTaxes" 
> numberformat = "#0.00" /></td>
>                               </tr>
>                       </table>
>                       </wo:AjaxUpdateContainer>
>                       <div id="buttons">
>                               <p><wo:submit class="update" action = 
> "$updateCart" value = "Update quantities" /></p>
>                               <p><wo:submit class="checkout" action = 
> "$submitOrder" value = "CheckOut" /></p>
>                       </div>
>               </wo:form>
>       </div>
> </div><!-- /cartView -->
> 
> On 20/set/2012, at 13:10, Pascal Robert <prob...@macti.ca> wrote:
> 
>> I moved to stateless for the sub-component (by extending from 
>> ERXStatelessComponent) and it still calls the sub-component for all rows 
>> instead of the table row I'm updating. And the table is now all divs.
>> 
>>> Possible cause would be binding synchronisation.
>>> Try to disable automatic sync binding on TestsPascal, or trace and debug 
>>> those sync calls to see if they are causing this.
>>> 
>>> --
>>> jfv
>>> 
>>> Le 2012-09-18 à 14:27, Pascal Robert a écrit :
>>> 
>>>> Hi guys,
>>>> 
>>>> I have a table with a chunk of AjaxUpdateContainer and AjaxObserveField in 
>>>> it.  Each row have its own AjaxUpdateContainer, so when a observe field 
>>>> action is triggered, I'm calling a sub-component to fill one of the 
>>>> columns. 
>>>> 
>>>> Problem is: if the table have 10 rows, the sub-component is called 10 
>>>> times instead of updating just the row where I put some text in the field 
>>>> that is observed. But the weird thing is that if instead of calling my 
>>>> sub-component and I call a 
>>>> 
>>>> The problem:
>>>> 
>>>> <wo:form>
>>>> <wo:AjaxUpdateContainer id="main_table">
>>>> <table style="width: 100%;">
>>>> <wo:loop list="$childsSpec" item="$childSpec">
>>>>  <wo:AjaxUpdateContainer class="row" elementName="tr" 
>>>> id="$childSpec.spec.ID">
>>>>    <td class="full-height">
>>>>        <table width="100%">
>>>>            <td class="parts_column">
>>>>              <ul>
>>>>                <wo:loop list="$~availablesPartsForSpec(childSpec.spec)" 
>>>> item="$partItem">
>>>>                      <li>
>>>>                        <wo:AjaxObserveField 
>>>> updateContainerID="$childSpec.spec.ID" 
>>>> action="$~addPartsFromLot(partItem)"> 
>>>>                            <wo:textfield value="$quantityToAdd" size="4" 
>>>> numberformat="#" style="padding: 0px; margin: 0px;" /> 
>>>>                      </wo:AjaxObserveField>
>>>>                      </li>
>>>>                </wo:loop>
>>>>              </ul>
>>>>            </td>
>>>>            <td class="manifest_column"> <wo:TestsPascal texte="allo" /> 
>>>> </td>
>>>>          </tr>
>>>>        </table>
>>>>    </td>
>>>>  </wo:AjaxUpdateContainer>
>>>> </wo:loop>
>>>> </table>
>>>> </wo:AjaxUpdateContainer>
>>>> </wo:form>
>>>> 
>>>> If I change this:
>>>> 
>>>> <wo:TestsPascal texte="allo" />
>>>> 
>>>> to this:
>>>> 
>>>> <wo:str value="$~someMethodThatReturnAString" />
>> 
>> 
>> _______________________________________________
>> Do not post admin requests to the list. They will be ignored.
>> Webobjects-dev mailing list      (Webobjects-dev@lists.apple.com)
>> Help/Unsubscribe/Update your Subscription:
>> https://lists.apple.com/mailman/options/webobjects-dev/amedeomantica%40me.com
>> 
>> This email sent to amedeomant...@me.com
> 


 _______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list      (Webobjects-dev@lists.apple.com)
Help/Unsubscribe/Update your Subscription:
https://lists.apple.com/mailman/options/webobjects-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com

Reply via email to