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
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.