Re: Suggested extension for WASelectTag

Mariano Martinez Peck <[email protected]>
Newsgroups gmane.comp.lang.smalltalk.squeak.seaside
Message-ID <CAA+-=mXCB7Jb0f80jOED5O=Bsp4B2xh_1cGmbzokCb-4euxugg@mail.gmail.com>
On Sat, Jul 1, 2017 at 2:24 AM, [email protected] <
[email protected]> 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

_______________________________________________
seaside mailing list
[email protected]
http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.