263
Views
9
Comments
Solved
Dropdown server side cannot select a former is selected option

I have created a dropdown server side, I don't allow for multiple selections.

My problem is that once I target an option, I can't switch back to that target ever again. It acts like it's already selected even though it is not anymore.

I have put a video of this problem so you would understand the issue.

Basically I should be able to select the options back that is not selected anymore.

OBE.mp4
2022-08-01 16-19-02
Stuart Ketcham
Solution

TLDR

Had this problem and solved it.  You need to refresh the data source that you used to populate the control.

Control in Question

https://success.outsystems.com/documentation/11/developing_an_application/design_ui/patterns/using_mobile_and_reactive_patterns/interaction/dropdown_server_side/#dropdown-server-side-item

Case Usage

Using the control as a single-select dropdown.

Solution

Under "Advanced\DropdownServerSide" > "BalloonContent" > "List" > "Source" is your data source for the control. The list appears to be holding the "IsSelected" values for the whole list, and blocks the user from selecting anything that it considers already selected. If you just refresh the data source it seems to lose track of what it had flagged as "IsSelected".

As long as you have the value you want used stored in a variable elsewhere, refreshing it shouldn't be a problem.

2019-03-19 12-24-07
Mariano Picco
 
MVP

It looks like a styling issue. Are you adding a class to the row that's been selected, making its background darker, and then not removing the class when it's no longer selected?

Or are you setting a row's status to 'selected = true' and then running your styling off of that, but then when something else is selected, you don't set selected = false to all the other options?


Hard to know without a look at the actual code but those are my best guesses


Kind regards

UserImage.jpg
Kadir Aksu

Hey Mariano


Indeed it could be a CSS property disabling it. However I am not using any customised class myself. It is a default OutSystems CSS/classes on the widget itself.

It does have something to do with IsSelected for sure, I somehow need to find a way to make it false once I select another option.

UserImage.jpg
Kadir Aksu

It is indeed staying as is-selected even though it shouldn't

2019-03-19 12-24-07
Mariano Picco
 
MVP


Which widget you mean? Since you said you implemented a server side drop down, I assumed you created a widget of your own

UserImage.jpg
Vincent Perhirin

Hi @Kadir Aksu

I'm currently facing the exact same issue. 
Once I've selected an option from the list, I can't deactivate it or return to it later. 
Have you found a solution to this problem?

Regards

2020-06-20 14-30-28
Oscar Vasconcellos

Greetins all, my workaround was using a DropdownServerSideItem that represents a default option (e.g."All") inside the BalloonContent and before the list. The ItemId returns a NullIdentifier value. Hope this can be useful.


2023-10-21 19-42-11
Tousif Khan
Champion

Hello @Kadir Aksu 

As I can see there are a couple of things there that are not in place on your dropdown 
I am attaching a sample for you that can help you with the reference, in the server-side dropdown we have to do customization basis on requirements.

Sample - https://personal-ejuytnht.outsystemscloud.com/CascadingDropdownServerSideSample/SampleDropdownTag?_ts=638236072514257208

I hope this will help you.
Thanks
Tousif Khan


CascadingDropdownServerSideSample_POC.oml
2022-08-01 16-19-02
Stuart Ketcham
Solution

TLDR

Had this problem and solved it.  You need to refresh the data source that you used to populate the control.

Control in Question

https://success.outsystems.com/documentation/11/developing_an_application/design_ui/patterns/using_mobile_and_reactive_patterns/interaction/dropdown_server_side/#dropdown-server-side-item

Case Usage

Using the control as a single-select dropdown.

Solution

Under "Advanced\DropdownServerSide" > "BalloonContent" > "List" > "Source" is your data source for the control. The list appears to be holding the "IsSelected" values for the whole list, and blocks the user from selecting anything that it considers already selected. If you just refresh the data source it seems to lose track of what it had flagged as "IsSelected".

As long as you have the value you want used stored in a variable elsewhere, refreshing it shouldn't be a problem.

2020-09-04 11-39-50
Rogier Olde Dubbelink

Hi Kadir,

I implemented an easy solution for this.

Create a handler for OnToggle at the Advanced\DropdownServerSide widget. In the handler, call DropdownServerSideClear (from OutSystemsUI). It unselects al vallues. That's all to do.

Community GuidelinesBe kind and respectful, give credit to the original source of content, and search for duplicates before posting.