[Seaside] Named PTAjax calls

Bob Arning arning315 at comcast.net
Wed Dec 18 23:25:30 UTC 2013


On 12/18/13 6:09 PM, Aaron Rosenzweig wrote:
> Hi Bob,
>
> Ahh ok. It took me a while to wrap my head around it but that’s clever.
>
> Basically you declared the “action” variable and then assigned it an 
> Ajax object.
Right - that assignment predated your request. I did that so I could use 
the same code for both the onClick: and the onEnter:. It used to read 
"onClick: action" and "onEnter: action". Similar to what you were 
wanting to do - use the same callback in a number of places.
> Though I don’t understand the underscores in the syntax.
old-school assignment (equivalent to colon-equal)
>
> Then, in the end, you make a javascript function and pass in the 
> “action” variable’s guts but giving it the “greaseString” message.
>
> Thank you Bob - you were the only one to respond. I appreciate it! :-)
> *Aaron Rosenzweig* / Chat 'n Bike <http://www.chatnbike.com>
> *e:* aaron at chatnbike.com <mailto:aaron at chatnbike.com> *t:*  (301) 
> 956-2319
> Chat 'n Bike 	Chat 'n Bike
>
>
> On Dec 17, 2013, at 6:24 AM, Bob Arning <arning315 at comcast.net 
> <mailto:arning315 at comcast.net>> wrote:
>
>> I certainly won't say this is the right way, but it seems to work:
>>
>> renderGlobalSearchOn: html
>>
>>     | inputId action |
>>
>>     inputId _ html nextId.
>>     action _ html jQuery ajax
>>         callback: [ :v2 |
>>             filterString _ v2.
>>             selections _ Dictionary new.
>>             visibleChunks _ #().
>>         ]
>>         value: (html jQuery id: inputId) value;
>>
>>         script: self scriptForGlobalSearch.
>>
>>     html script: 'function foobar27(){',action greaseString,'}'.
>>
>>     html div: [
>>         html button
>>             value: 'Search:';
>>             onClick: 'foobar27()';
>>             yourself.
>>         html textInput
>>             id: inputId;
>>             value: filterString;
>>             onEnter: 'foobar27()'.
>>     ].
>>
>>
>> Cheers,
>> Bob
>>
>> On 12/16/13 8:25 PM, Aaron Rosenzweig wrote:
>>> Oh c’mon, no takers?
>>>
>>> Nobody has faced this before?
>>>
>>> I can’t believe something so easy in WebObjects is so hard in 
>>> Seaside. (Ok, that was below the belt).
>>>
>>> In WO, all I have to do is drop an “AjaxWOSubmitButton” component on 
>>> the page and then bind the “functionName” binding. I can immediately 
>>> call that name in Javascript from the client side and anything in 
>>> the “action” binding is performed and all the form bindings are 
>>> synchronized.
>>>
>>> Thanks,
>>> *Aaron Rosenzweig* / Chat 'n Bike <http://www.chatnbike.com/>
>>> *e:* aaron at chatnbike.com <mailto:aaron at chatnbike.com> *t:*  (301) 
>>> 956-2319
>>> Chat 'n Bike 	Chat 'n Bike
>>>
>>>
>>> On Dec 15, 2013, at 9:50 AM, Aaron Rosenzweig 
>>> <aaron at cocoanutstech.com <mailto:aaron at cocoanutstech.com>> wrote:
>>>
>>>> Hello,
>>>>
>>>> Is there a way to “name” a PTAjax callback so that it can be 
>>>> conveniently invoked from javascript?
>>>>
>>>> Situation:
>>>> Want to effectively have a submit button (or hyperlink) on the page 
>>>> with an on click Updater callback… then from something 
>>>> programmatically on the page… *click* that link.
>>>>
>>>> Problems:
>>>> 1) Having a hidden button or link to click is not elegant (I feel 
>>>> dirty)
>>>>
>>>> 2) It doesn’t always work. For various reasons, doing a 
>>>> domElement.click() is not the same as a human hand doing a click 
>>>> because it doesn’t generate a full mouse click event.
>>>>
>>>> Thought:
>>>> There must be a way to setup the following:
>>>> A) Create a PTAjax object with a name that is a global javascript 
>>>> variable on the client side (web browser)
>>>>
>>>> B) You would provide the “javascript function name” a “seaside 
>>>> callback” a “HTML form ID or form name” so that synchronization of 
>>>> form variables can take place and finally an “update container ID”
>>>>
>>>> C) You could just invoke it from your javascript code and know that 
>>>> it will safely update the server.
>>>>
>>>> Does this make sense?
>>>> *Aaron Rosenzweig* / Chat 'n Bike <http://www.chatnbike.com/>
>>>> *e:* aaron at chatnbike.com <mailto:aaron at chatnbike.com> *t:*  (301) 
>>>> 956-2319
>>>> Chat 'n Bike 	Chat 'n Bike
>>>>
>>>>
>>>
>>>
>>>
>>> _______________________________________________
>>> seaside mailing list
>>> seaside at lists.squeakfoundation.org
>>> http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside
>>
>> _______________________________________________
>> seaside mailing list
>> seaside at lists.squeakfoundation.org 
>> <mailto:seaside at lists.squeakfoundation.org>
>> http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.squeakfoundation.org/pipermail/seaside/attachments/20131218/4c2ed141/attachment.htm


More information about the seaside mailing list