When the MultiSelect is created from a predefined HTML, the dataTextField and dataValueField options default to "text" and "value" instead of empty string.
The dataTextField and dataValueField options default to text and value
The dataTextField and dataValueField's default values should be empty strings
The documentation for the Kendo UI MultiSelect widget states that the user can highlight the next/previous item using RIGHT/LEFT when the selection popup is closed. This works as expected. However, if the user then presses TAB and moves the focus somewhere else, the item remains highlighted.
Since the highlight only indicates that certain actions can be executed on the item, it should be removed in such a case as the actions are no longer executable. This can easily be reproduced with the keyboard navigation sample:
Reproducible in the demos on mobile devices or in Chrome's emulator.
Screencast.
The dropdown opens and a js exception is thrown:
"Ignored attempt to cancel a touchend event with cancelable=false, for example because scrolling is in progress and cannot be interrupted."
The dropdown does not open (similarly to the way the DropDownList behaves in the same scenario).
Hi Team,
I would like to request being able to add new items into the MultiSelect and saving them per user.
It has become clear that while this control allows a user to add custom entries not currently in the pre-defined list, it appears they can't later be loaded, like when a user saves choices, including custom entries.
I've never seen a scenario where a user enters input into a control and later doesn't need to see what they enter (saved to a Db).
Therefore, the MultiSelect demo which allows you to add custom entries, but can't later display them represents an unrealistic scenario and I recommend at least adding a caveat to the page informing developers planning to use that feature of this limitation.
I like the MultiSelect and use it in many places, but since the custom add feature won't support common usage (later display what they type), I recommend this feature not be displayed as a demo until it's ready.
For example, it should accept as a property a string, delimited by commas, custom entries.
It would then iterate through custom entries and where it doesn't match, add them for you.
Thank you.
In MultiSelect when the value is set initially and the mapValueTo option is set to 'dataItem', if the user first open and close the popup, the last item can not be removed and an error 'c.select(...).done is not a function' is thrown.
As the Dojo above does not use a remote valueMapper below is a sample project where a remote valueMapper method is implemented
WebApplication3.zip
The last item can not be removed and an error 'c.select(...).done is not a function' is thrown in the browser`s console.
The other items except the last one can be removed as expected. Also, all items can be removed initially in case the popup has not been opened and scrolled to the last item from the value.
It should be possible to remove all items displayed in the MultiSelect input, even in a scenario where the popup has been opened and closed.
MultiSelect e.preventDefault() does not work in change event when selecting/deselecting items with Ctrl+A or Chift+Arrow
No items should be selected as e.preventDefault()
is called in the select
event.
Similarly to the feedback listed in https://feedback.telerik.com/kendo-jquery-ui/1560733-multiselect-keyboard-events-bubble-although-already-handled#:~:text=The%20approach%20described%20in%20order%20to%20prevent%2Foverwrite%20the,well%3A%20kendo.ui.MultiSelect.fn._keydown%20%3D%20function%28e%29%20%7B%20e.preventDefault%20%28%29%20%7D%3B
I am exploring using a multiselect box within a window. If I choose to not allow the multiselect to autoClose, hitting the escape key will close the multiselect, but the event will continue to bubble up and will close the window. Ideally, the multiselect should close its panel, but the window it is embedded on should not.
One solution to this problem is to add a handler for the close event on the window, however there is currently no way to determine if the close event is being triggered by clicking the close button on the window, or from an escape character (e.userTriggered does not go far enough to differentiate). I would like the user to be able to click the close button manually to close the dialog, but not necessarily use the keyboard Escape key. See: https://docs.telerik.com/kendo-ui/api/javascript/ui/window/events/close
The following solution as mentioned in the feedback link above, can be used to stop the propagation of the Escape key globally, but this then breaks all other keyboard actions (which is bad from a usability standpoint). Is there any way to add this functionality? From looking at the source (which we have as part of our subscription), simply adding e.stopPropagation() when responding to the ESC key in the _keydown function of kendo.multiselect.js would be enough to fix this issue.
kendo.ui.MultiSelect.fn._keydown = function (e) {
if (e.which === 27) {
e.stopPropagation();
}
}
Thanks.
Hi Team,
I would like to request a built-in functionality to have the Kendo UI MultiSelect to select and deselect all items. Perhaps a checkbox or specific button within would be great.
Thank you!
When the value of the widget is set in the dataBound event handler the filtering events is fired and e.filter is undefined
The filtering event is fired a second time and the second time the e.filter is undefined.
Double-checlk if the filtering event should be fired a second time.
The e.filter and e.sender.dataSource.filter().filters[0] should return the same value.
An error occurs when filtering the MultiSelect with grouping enabled.
An error occurs on the browser console.
No errors should occur when filtering the component.
Currently, the MultiSelect input does not have a placeholder attribute in its rendering. This leads to inconsistency with the other input components such as AutoComplete and ComboBox.
Currently, the MultiSelect 'input.k-input-inner' element does not have a placeholder attribute. As a consequence, the color of the placeholder is slightly different than the rest of the input widgets.
The MultiSelect widgets should have a placeholder attribute in order to be consistent with the rest of the widgets such as AutoComplete and ComboBox
Dojo example.
All items are selected, but the first two ("Chai and Chang") are not highlighted as selected.
All items should be selected and highlighted as selected.
In the MultiSelect widget preventing the default of the filtering event while minLength is set to more than 1 causes the value method to not be able to properly get and set values of the selected dataItems.
The Clear Value button is able to clear the selected values but is not updating to visualize the change in the Widget
The button Clear Value is expected to clear the selected values and visualize the change
The MultiSelect is flickering several times when filtering and then selecting an item in Desktop mode on Safari.
The selected item flickers several times. (the selected item disappears and re-appears several times)
The selected item should not be flickering.
MultiSelect with virtualization and tagMode: single deselects items when too many items are selected.
For convenience, attached is a small video demonstrating the behavior.
Note: So far I was unable to reproduce the issue in a Dojo example when trying to replicate the configuration from the project.
At some point, the dropdown popup will scroll up, and some items that have been selected, will be deselected. Also, the single tag for the selected items will disappear.
The component should not be deselecting items, should not scroll up and the tag should not disappear.
Attachments:
Project - MultiSelectIssue.zip
Video - Kendosln_Issue.zip
When an empty array is passed to the MultiSelect's value method inside the deselect event, the item that is deselected remains selected in the MultiSelect.
The different MultiSelect items are deselected except for the "All" item.
*If the "if" statement is removed from the deselect event function in the Dojo, and only the 'e.sender.value([]);' is kept, the issue is reproducing no matter of the selected item in MultiSelect's popup.
Calling 'e.sender.value([]);' should remove all items selected in the MultiSelect.
Click on the "Clear values" button to see the expected behavior.