[Seaside] Get the result of JS function
Thomas Heniart
heniart.thomas at gmail.com
Wed Sep 23 06:25:10 UTC 2015
wqTest come from WQTest class
class side:
canBeRoot
^ true
initialize
super initialize.
(WAAdmin register: self asApplicationAt: 'wqTest')
addLibrary: JQDevelopmentLibrary;
addLibrary: WQTestFileLibrary
instance side:
renderContentOn: html
html button
onClick: (html jQuery ajax callback: [ :value | Transcript show:
'value' ] value: (html javascript call: 'test'));
with: 'Call test'
And WQTestFileLibrary
contains a single JS file with:
function test() {
return true;
}
This a very small example just to see where the bug could come from
Thomas
2015-09-22 21:48 GMT+02:00 Johan Brichau <johan at inceptive.be>:
> I think you will need to supply a bit more code or information.
>
> Where is wqTest coming from?
>
> On 22 Sep 2015, at 19:47, Thomas Heniart <heniart.thomas at gmail.com> wrote:
>
> Error is in wqTest (:1:104), so I don't think that error is in my JS file
> which only contains
> function test() {
> return true;
> }
>
> Really strange...
>
>
> 2015-09-22 19:35 GMT+02:00 Johan Brichau <johan at inceptive.be>:
>
>> In what file is the syntax error?
>>
>> This is probably a syntax error in your javascript.
>>
>> On 22 Sep 2015, at 19:21, Thomas Heniart <heniart.thomas at gmail.com>
>> wrote:
>>
>> I get this error when I load the page:
>> SyntaxError: expected expression, got '.'
>> and I don't know why :/
>> What could it be?
>>
>>
>> Cheers,
>> Thomas
>>
>> 2015-09-22 18:31 GMT+02:00 Thomas Heniart <heniart.thomas at gmail.com>:
>>
>>>
>>>
>>> 2015-09-22 9:13 GMT+02:00 Johan Brichau <johan at inceptive.be>:
>>>
>>>> Thomas,
>>>>
>>>> You can use the jQuery binding in Seaside to easily return javascript
>>>> values in ajax callbacks.
>>>> For example:
>>>>
>>>> html
>>>> button;
>>>> onClick: (html jQuery ajax callback: [:value | Transcript show:
>>>> value ] value: (html javascript call: ‘test’ withArguments: #()))
>>>> with: ‘Call test’
>>>>
>>>
>>> I tried this but it doesn't work, nothing appeared in the Transcript
>>> like if the callback isn't triggered...
>>> Maybe I forget something in the configuration of application
>>> (WAAdmin register: self asApplicationAt: 'Test')
>>> addLibrary: JQDevelopmentLibrary;
>>> addLibraby: MyLibraryWithJsFiles
>>>
>>> MyLibraryWithJsFiles contains just a js file with test() { return true; }
>>>
>>>
>>>>
>>>> The #callback:value: method passes the result of client-side expression
>>>> to the server-side callback.
>>>> Mind that (as the method comment states), this only works for single
>>>> literal Javascript object (String, Number, Boolean). If you want to pass
>>>> more complex result values, you can use #callback:json: or write your own
>>>> serialization if json serialization is not sufficient either.
>>>>
>>>> Hope this answers your question,
>>>> Johan
>>>>
>>>
>>>
>>> Thanks for your help,
>>>
>>> Thomas
>>>
>>>
>> _______________________________________________
>> 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
>> http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside
>>
>>
> _______________________________________________
> 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
> http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.squeakfoundation.org/pipermail/seaside/attachments/20150923/330b6740/attachment-0001.htm
More information about the seaside
mailing list