kendo ui multiselect obtenir les noms des valeurs déjà sélectionné
j'ai un multiple de kendo, peuplé par un contrôleur mvc.
j'ai une option dans la liste déroulante qui est selectAll, et lorsque je sélectionne cette option, j'ai effacer tous les autres, maintenant, je veux désactiver le menu déroulant (mais pas la possibilité de supprimer l'option "Sélectionner Tout".
si je ne
multiselect.enable(false) //i lose the option to delete the selected "Select All"
Avec ce code ci-dessous: lorsque je choisis l'option "Sélectionner Tout", j'ai effacer toutes les autres option est sélectionnée et le kendo juste laisser le Sélectionné Toutes les options sélectionnées.
if (sel == 'Select All') {
var name_Controller = $(e.item).parent().attr('id');
var name_Controller = name_Controller.substr(0, name_Controller.indexOf('_'));
var t = "#" + name_Controller;
var required = $(t).data("kendoMultiSelect");
required.value(""); //to clean
Maintenant.. comment puis-je désactiver l'autre option, ou de connaître le nom de l'option qui a été choisie dans le but de faire quelque chose comme ceci:
if(required.contains("Select All")) //dont do nothing
le nécessaire.val() doenst travail parce que c'est utilisé dans plusieurs listes déroulantes tous automatiquement avec diferent id
OriginalL'auteur sir_ask | 2014-02-20
Vous devez vous connecter pour publier un commentaire.
Il y a deux questions à garder à l'esprit:
filter
.change
événement de sorte que vous pouvez analyser les options choisies, et si "Sélectionner Tous" est choisie, le filtre de chaque option de la liste.Ce que vous devez faire est quelque chose comme:
Le vérifier ici : http://jsfiddle.net/OnaBai/9nVdq/6/
EDIT: Si vous voulez faire une fonction générique pour faire face à cette "Sélectionner Tout", il vous faut définir le MultiSelects:
et de la fonction
selectAll
:le "truc" c'est que
this
se réfère à courantmultiselect
.Le voir en action ici : http://jsfiddle.net/OnaBai/9nVdq/8/
Voir mon MODIFIER
BTW: Vous ne devez pas utiliser l'espace pour des Réponses pour fournir plus de détails, autant que possible, vous devriez les modifier à la question d'origine.
OriginalL'auteur OnaBai
Peuvent être très vieux post, mais quand j'étais dans la même situation que vous, j'ai trouvé une solution directe.
$("#kendo-liste-id").de données("kendoMultiSelect").dataItems (), vous obtiendrez tous les éléments sélectionnés à partir du Kendo multiselect de contrôle.
S'il vous plaît laissez-moi savoir, si vous avez des inquiétudes à ce sujet.
kendoDropDownList
: vous devez le modifier pour en$("#kendo-dropdown-id").data("kendoMultiSelect").dataItems();
Désolé... chiapa.. mon mauvais.. Vraiment je le pensais.. Merci de m'aider.. 🙂
vous avez sauvé ma vie!! Merci man!
OriginalL'auteur itb564
Une autre méthode, au lieu d'essayer de forcer les valeurs de texte de la multiselect. La Capture de l'événement databound et de saisir l'ensemble de la source de données et de les stocker que la panoplie complète de votre modèle.
Ensuite, vous pouvez utiliser les valeurs sélectionnées comme un coup d'oeil à l'encontre de l'origine de la source de données les données que vous possédez maintenant. Cela vous permettra de garder un lâche dépendance entre viewModel et de la page.
OriginalL'auteur Chris Marisic