Is it possible to allow users to click on an already-selected item in a dropdown, and have the dropdown close? I'd like to do this both with a plain WebDropDown, and one that contains a WebDataGrid for multicolumn display.
When the WebDropDown contains a WebDataGrid, I can use
<ig:WebDataGrid ID="wdgMyList" runat="server" AutoGenerateColumns="False" DataSourceID="dsMySource" ShowHeader="False" ClientEvents-MouseUp="ddMyList_close">
function ddMyList_close(sender, e) { var ddMyDD = $find('<%=ddMyDD.ClientID %>'); ddMyDD.closeDropDown(); }
Still unsure how to handle a plain WebDropDown that doesn't contain a grid.
Hello PV87669,
Thank you for posting in the community.
When using a regular WebDropDown, you may handle theItemMouseDownclientside event in order to check whether the clicked item is already selected:
Please let me know if this helps.
Thanks.
I had a problem if the click is very brief; the dropdown would close and immediately re-open. It worked fine with a brief pause while the button is down.
I got more consistent behaviour with:
function WebDropDown1_ItemMouseDown(sender, eventArgs) if (eventArgs.get_value().get_selected() == previously_saved_value) { sender.closeDropDown(); }
Sorry, corrected...
function ddGrower_itemMouseDown(sender, e) {
var sel = e.get_value().get_selected();
if ((sel) && (sel == _previous_saved_value) )
sender.closeDropDown();
}
Thank you for your reply and feedback.
Please let me know if you have any further questions regarding this matter.