[Seaside] Suggested extension for WASelectTag
Johan Brichau
johan at inceptive.be
Mon Jul 3 07:19:00 UTC 2017
Hi guys,
I would prefer that Seaside is able to do this:
html select
callback: …;
with:[
myItems do:[:anItem |
html option
attributeAt: … put: …;
value: anItem ] ]
Right now, you must do it like this (i.e. add a callback for each option):
html select
dispatchCallback;
with:[
myItems do:[:anItem |
html option
attributeAt: … put: …;
callback: [ …. ]
value: anItem ] ]
cheers,
Johan
> On 3 Jul 2017, at 02:23, Mariano Martinez Peck <marianopeck at gmail.com> wrote:
>
>
>
> On Sat, Jul 1, 2017 at 2:24 AM, jtuchel at objektfabrik.de <mailto:jtuchel at objektfabrik.de> <jtuchel at objektfabrik.de <mailto:jtuchel at objektfabrik.de>> wrote:
> Hi,
>
>
> I needed a way to add an attribute of each option in a select list, because Seaside uses the value attribute for its server side callback.
>
> The reason was I wanted to do something on the browser side onChange/onKeyUp based on some business values.
>
>
> Here is what I changed in WASelectTag:
>
> * added inst var: itemConfigBlock with getter and setter
>
> * changed #renderListItemLabelled: to
>
>
> renderListItem: anObject labelled: aString
>
> | option |
>
> option := canvas option.
> self hasCallback ifTrue: [option value: (self valueFor: anObject)].
> titleBlock isNil ifFalse: [option title: (self titleFor: anObject)].
> itemConfigBlock ifNotNil: [:block | block value: option value: anObject].
> option
> selected: (self isSelected: anObject);
> disabled: (self isEnabled: anObject) not;
> with: aString
>
>
> And this is how you can use it:
>
>
> html select
>
> items: MyListOfItems;
>
> callback: [];
>
> itemConfigBlock: [:option :anObject| option attrbibuteAt: 'data-value' put: anObject someValue asString].
>
>
> Was this available already and did I overlook it?
>
> Does this sound reasonable? Worth adding to Seaside?
>
>
>
> Yes, I had to do exactly the same.
>
>
> --
> Mariano
> http://marianopeck.wordpress.com <http://marianopeck.wordpress.com/>
> _______________________________________________
> seaside mailing list
> seaside at lists.squeakfoundation.org <mailto:seaside at lists.squeakfoundation.org>
> http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside <http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.squeakfoundation.org/pipermail/seaside/attachments/20170703/b26eaaaf/attachment-0001.html>
More information about the seaside
mailing list