élément pour les grands ensembles de données - Retrouvez les réponses et les commentaires concernant cette question" />
10
votes

Alternatives à un seul élément pour les grands ensembles de données

Je suis souvent confronté à la façon d'aborder ce problème dans mes applications. J'ai utilisé n'importe quel nombre d'options, notamment:

  • Un multiiselect générique - c'est la option mon plus préférée et la plus rarement utilisée. Je trouve la convivialité d'être atroce, un simple clic sur mesure peut bousiller tout votre travail acharné.
  • Une solution "autocomplete" - Inverside: l'utilisateur doit avoir des capacités d'orthographe pour trouver les fichiers de fichiers dont ils ont besoin, ne sont pas exposés à ceux qu'ils n'auraient peut-être pas à l'esprit et les performances potentielles de la recherche de sous-chaînes.
  • Deux multisélections adjacentes, avec un bouton Ajouter / Supprimer - Downsides: Toujours "Ugly" IMO
  • N'importe quel nombre de solutions JavaScript fantaisie ( http://livepipe.net/control/selectmultiple , < Un href = "http://loopj.com/2009/04/25/jQuery-plugin-tenkiniser-autocomplège-text-entry/" rel = "NOREFERRER"> http://loopj.com/2009/04/25 / jQuery-plugin-tokenizing-autocomplete-text-entrée / , etc.)

    Je n'ai pas été en mesure de trouver des études de convivialité effectuées sur la meilleure approche de ce problème. Beaucoup de ces solutions alternatives sont excellentes lorsque vous allez de <10 éléments à cent, mais peut tomber complètement décomposer lorsque vous allez d'une centaine à mille.

    Qu'est-ce que vous utilisez? Pourquoi l'utilisez-vous? Pouvez-vous me signaler aux études de cas de convivialité? Y a-t-il une solution "magique" qui n'a pas encore été découverte?


0 commentaires

4 Réponses :


0
votes

Jetez un coup d'œil à DOJO Toolkit's DataGrid contrôle. C'est de loin le plus flexible et le plus puissant et prend en charge plusieurs sélections de lignes. Il dispose également de fonctionnalités d'accessibilité intégrées.


3 commentaires

Oui, je suis au courant de Dojo DataGrid. C'est un peu de surkilleuse cependant. Ce n'est pas vraiment destiné à l'utilisation que j'ai spécifiée. Dojo est également un cadre très lourd, avec une courbe d'apprentissage méchante imo.


Je cherche aussi plus que "essayer cette" réponses. J'aimerais voir la discussion et l'explication des suggestions et comment l'outil répondrait à mes préoccupations et aux limites des solutions précédemment mentionnées.


Je vois. Toute solution en ce moment sera juste temporaire de toute façon, car HTML5 ajoute une grille de données standardisée, ce que vous voudriez utiliser une fois que cela est mis en œuvre.



2
votes

Je ne peux pas vous indiquer dans aucune étude de cas, malheureusement, mais ce que je peux vous dire, c'est que je préfère personnellement de grandes matrices de cases à cocher dans des mises en page de deux à cinq colonnes. Bien sûr, ils prennent beaucoup d'espace, mais ils sont extrêmement précis et simples.

Je pense que pour tout contrôler - Soyez-la de base multiisélection, une liste double, une table à cocher ou une autre solution - une fois que vous passez sur un certain seuil d'articles, il va être difficile pour l'utilisateur no Peu importe quoi.


0 commentaires

0
votes

La bibliothèque ExtJS a de très bonnes solutions pour votre problème. Il y a un tas d'extensions utilisateur pour les combinaisons NEAT-O et Multi Select Boxes.

Si vous souhaitez une liste de sélection combo, vous pouvez ajouter la recherche et la pagination de la requête, plus la conception de la liste déroulante résultante à l'aide de modèles simples, comme dans cet exemple:

http://extjs.com/deploy/ Dev / Exemples / Formulaire / Forum-Search.html

Voici un bon multiiselect, dans le style, vous semblez décrire:

* (Main_Site) / Apprendre / extension: Multiselect2

Vous pouvez trouver toutes les extensions utilisateur ici:

* (main_site) / apprendre / ext_extensions

plus, vous pouvez facilement l'inclure dans une page Web existante sans beaucoup de frais généraux supplémentaires. EXTJS's Full Stack est assez vaste, mais pour obtenir uniquement les fichiers JS dont vous avez besoin, ils fournissent un bon outil de constructeur pour saisir uniquement ces pièces dont vous avez besoin:

* (Main_Site) / Produits / ExtJS / Build /

Juste un avertissement: ExtJS vient de publier 3.0, mais je ne suis pas sûr que les extensions utilisateur ont été améliorées. La "recherche forum" a été prise à partir d'un exemple de 3.0 cependant, cela fonctionnera donc bien avec le dernier et le plus grand.

(*) Apparemment, les nouveaux utilisateurs ne peuvent poster qu'un seul lien ...


0 commentaires

12
votes

Mon conseil est d'utiliser plusieurs contrôles de sélection multiple génériques. Je rencontre des recherches d'expérience utilisateur pour toute ma carrière et que chaque fois que je teste un site avec plusieurs contrôles de sélection, il s'avère toujours pour causer des problèmes pour les utilisateurs finaux.

J'ai fait un post sur cela un moment de retour: Plusieurs contrôles de sélection doivent évoluer ou mourir

On dirait que vous saviez cela quand même. Votre vraie question est "qu'est-ce que j'utilise à la place?" Eh bien, pour répondre à cette question, vous devez déterminer si la tâche de l'utilisateur se penche vers rappel de rappel ou reconnaissance .

(i) par rappel , je veux dire que l'utilisateur sait ce qu'ils veulent choisir avant même d'avoir vu la liste. Dans ce cas, il est probablement plus facile pour eux si vous proposez un outil autocomplete (comme utilisé très efficacement sur Facebook, par exemple). Cette solution est encore meilleure lorsque la liste des options est également incroyablement longue de présenter sur une page (E.G. Noms de localisation, etc.).

(ii) passe à la reconnaissance - par là, je veux dire une tâche qui implique l'utilisateur de ne pas savoir ce qu'ils veulent choisir jusqu'à ce qu'ils ont vu la liste des options. Dans ce cas, l'autocomplete ne leur donne aucune indication. Un éventail de cases à cocher serait beaucoup plus utile. Si vous pouvez les montrer tous à la fois, cela est utile à l'utilisateur. Les divs défilants sont plus compacts mais ils créent une charge de mémoire pour l'utilisateur - c'est-à-dire une fois qu'ils ont défilé, ils doivent se rappeler quels articles qu'ils ont choisis. Ceci est particulièrement évident lorsque les utilisateurs savent un formulaire et y reviennent plus tard.

Alors, pensez à votre problème, avez-vous besoin d'une solution pour rappeler ou reconnaître?


0 commentaires