it-swarm.it

Quale dovrebbe essere l'opzione predefinita di un elenco a discesa richiesto?

Dato che non esiste alcun logicamente predefinito animale dall'elenco di animali di seguito, quale dovrebbe essere il "Valore predefinito" di seguito, secondo le migliori pratiche?

<label for="animal">Animal (required):</label>
<select name="animal">
  <option value="">Default Value</option>
  <option value="0">Cat</option>
  <option value="1">Dog</option>
  <option value="2">Horse</option>
  <option value="3">Pig</option>
  <option value="4">Sheep</option>
</select>

Un valore vuoto, <option value=""></option>?

Qualcosa di visivamente irritante, <option value="">***CHOOSE ANIMAL***</option>?

Qualcosa che si fonde ma fornisce istruzioni, <option value="">Select an Animal</option>?

Qualcos'altro del tutto?

56
Dolph

Non sono rispettosamente d'accordo con la risposta di Michael. Non posso parlare con le GUI desktop, ma nei moduli Web vuoi evitare di avere un valore predefinito a meno che tu non creda che gran parte del tuo utente (forse 90% +) selezionerà quel valore. Soprattutto se è un campo obbligatorio.

Perché? Perché è probabile che tu introduca degli errori perché le persone si affrettano a sfogliare rapidamente i moduli online - non dare per scontato che impiegheranno il tempo per analizzare tutte le scelte e potrebbero saltare allegramente da qualcosa che ha già un valore. Se è un valore richiesto, immagino sia importante distinguere tra ciò che intendevano inserire e quale era l'impostazione predefinita.

Nel tuo caso particolare, suggerirei di utilizzare l'opzione centrale - <option value="">Select...</option> o qualcosa di simile. Non c'è bisogno di dire "Seleziona un animale" quando l'etichetta è lì.

Quindi DEVI confermare tramite javascript, ecc. In modo che il modulo non venga inviato se il valore è vuoto. Questo evita di ottenere risultati kludgy e fornisce feedback all'utente su ciò che hanno perso.

E, naturalmente, ci sono centinaia di script là fuori per fare azioni più sofisticate come rimuovere l'opzione predefinita una volta selezionato qualcosa.

57
Voodoo

Questa è una domanda a cui non ho mai trovato la risposta "giusta". Lasciarlo vuoto sembra valido quanto renderlo un comando "selezionane uno". Alla fine, potrebbe non essere un grosso problema.

Penso che abbia senso non impostarlo su una selezione valida, comunque.

Se dovessi inventare argomenti per entrambe le opzioni:

  • vuoto = facile da scansionare il modulo per vedere cosa non hai compilato.
  • command = indica chiaramente che devi fare qualcosa.

Sulla base di ciò, forse una soluzione ibrida in cui hai il comando come predefinito, ma visualizzalo graficamente via JavaScript/CSS. Ciò consente di essere visibilmente diverso da un elemento selezionato, ma non lasciato in bianco.

12
DA01

Un valore vuoto in realtà non è una buona idea: non fornisce davvero un indizio visivo e potrebbe persino implicare per alcuni utenti che il campo non è obbligatorio. Dire qualcosa come "Seleziona un animale" insieme allo stesso tipo di segnale visivo che usi per altri campi obbligatori (il più comune è l'asterisco rosso) dovrebbe aiutare a comunicare il punto.

7
Charles Boyung

L'impostazione predefinita dovrebbe essere un valore legittimo. Questa è la pratica in quasi tutte le GUI desktop e ha funzionato bene per decenni. Le Linee guida per l'interazione con UX di Windows 7 specificano specificamente “Selezionare l'opzione più sicura (per prevenire la perdita di dati o l'accesso al sistema) e più sicura per impostazione predefinita. Se la sicurezza non è un fattore, seleziona l'opzione più probabile o conveniente .... Non utilizzare le istruzioni [all'interno dell'elenco a discesa] solo per indirizzare gli utenti a selezionare qualcosa dall'elenco "(p88-89).

Non vedo alcun motivo per cui un'app Web dovrebbe essere diversa. L'impostazione predefinita di un non valore è un kludge che va contro la progettazione e l'implementazione prevista degli elenchi a discesa, un'indicazione abbastanza buona che rappresenta un uso improprio.

L'impostazione predefinita dovrebbe essere:

  • In primo luogo, un valore non pericoloso, che è meno probabile che provochi perdite irreparabili o danni all'utente o alla sua proprietà. Se questo menu a discesa indica all'animale di recapitare un messaggio all'utente, il valore predefinito non dovrebbe essere Hungry Tiger.

  • In secondo luogo, il valore più comunemente scelto. Anche se solo il 20,1% dei tuoi utenti sceglie "Cane", è comunque il 20,1% dei tuoi utenti che non dovrà fare un paio di clic, senza costi per il restante 79,9% dei tuoi utenti.

  • In terzo luogo, il miglior esempio del set. Il menu a discesa predefinito serve a illustrare i tipi di valori che l'utente può scegliere. Nel tuo caso, sembra essere la categoria di "animali da fattoria", quindi sarei propenso ad andare con "Cavallo". "Cane", al contrario, può suggerire "animale domestico" più di "animale da fattoria".

Non vedo alcun punto nel rendere l'impostazione predefinita un'istruzione. Il fatto che ci sia un elenco a discesa rende abbastanza ovvio che gli utenti devono selezionare un valore. Un valore di esempio come predefinito è più informativo.

Sospetto che molti web designer pensino che tu ottenga dati più precisi se costringi l'utente a scegliere esplicitamente un'opzione. Mentre ci possono essere situazioni in cui questo è il caso, non ne ho visto alcuna prova. Sospetto che il default su un valore legittimo di solito lo renda altro probabilmente ottieni dati accurati. Liberando alcuni dei tuoi utenti dalla selezione del valore eviti le possibili scivolate che gli utenti potrebbero fare, o, più probabilmente su un modulo web, la selezione di qualsiasi valore precedente solo per soddisfare l'input richiesto.

4
Michael Zuschlag

In realtà penso na selezione a discesa è comunque un cattivo utilizzo. Questa domanda indica uno dei problemi, che non è chiaro cosa farne. In parte un problema di come i browser visualizzano un tale elenco, ma principalmente il tuo problema secondo i tuoi utenti.

Meglio sostituirlo con:

  • una casella di testo libero basata sulla ricerca javascript attraverso i valori consentiti, come quando si aggiungono tag;
  • per meno opzioni: pulsanti radio (o radio-a-like)
  • pulsantiere che puoi abilitare/disabilitare, per scelte che non sono così bianche/nere; "il tuo animale preferito" potrebbe essere multiplo.
  • solo testo libero completamente, se scopri che dopo tutto non è obbligatorio
1
Lode

Ho trovato queste informazioni da X Movement.com

Come altri elementi del modulo, un menu di selezione dovrebbe sempre avere un'etichetta accanto. Tuttavia, dovresti anche avere un'etichetta nel menu di selezione che indica agli utenti cosa stanno selezionando. L'etichetta dovrebbe descrivere chiaramente e distintamente il gruppo di opzioni.

Un'etichetta generica come "Please Select" non è abbastanza chiara per gli utenti con accessibilità che utilizzano gli screen reader per compilare i moduli. L'aggiunta di un'etichetta all'esterno e all'interno del menu di selezione consente a tutti gli utenti di agire più rapidamente senza alcuna confusione.

Nel complesso, potrebbe non esserci una soluzione corretta al 100%, ma solo ciò che consente all'utente di completare la propria attività con la minima probabilità che l'utente abbia un errore.

1
Bob

Uso un suggerimento visivo che il campo richiede input. Qualcosa come un bordo rosso con un punto esclamativo rosso con una descrizione comandi quando passi il mouse.

-Modifica- Come sottolinea Peter in un commento, questa non è davvero una buona idea perché questo dirà all'utente che ha fatto qualcosa di sbagliato prima di aver fatto qualcosa. Immagino che un altro indizio visivo come l'asterisco o qualcosa per indicare che il campo è obbligatorio, anche con un'opzione di default vuota, sia più adatto.

0
jpsstavares