Hi,
I updated the script.aculo.us integration to Seaside. The purpose of
this mail is to explain what changed and why these changes were
necessary:
The basic problem was that the serialization of some form elements did
not work with Seaside, such as check-boxes and multi-select lists. The
reason why those two didn't work, is because they are using additional
(hidden) form fields before and after the element to give seaside
users callbacks that work exactly as they would expect from GUI
applications.
Now the trouble is that script.aculo.us has no way to know what fields
belong together and thus have to be submitted together, so if you used
the method #triggerCallbackFor: did not time trigger all the necessary
callbacks.
The simplest solution I could come up with, is not to serialize single
form-elements but whole forms instead, that can be as small as only
contain the form-element. To make that distinction I renamed
#triggerCallbackFor: to #triggerFormElement: and introduced
#triggerForm:. Like this, all the form elements (except uploads that
are currently not supported by script.aculo.us) work, as you can see
in the running example on <http://scriptaculous.seasidehosting.st>.
Does this make any sense?
Lukas
--
Lukas Renggli
http://www.lukas-renggli.ch