Re: Suggested extension for WASelectTag
Johan Brichau <[email protected]>
| Newsgroups | gmane.comp.lang.smalltalk.squeak.seaside |
|---|---|
| Message-ID | <[email protected]> |
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 <[email protected]> wrote:
>
>
>
> On Sat, Jul 1, 2017 at 2:24 AM, [email protected] <mailto:[email protected]> <[email protected] <mailto:[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 <http://marianopeck.wordpress.com/>
> _______________________________________________
> seaside mailing list
> [email protected] <mailto:[email protected]>
> http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside <http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside>
_______________________________________________
seaside mailing list
[email protected]
http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside