select_multiple-spørsmålstypen viser en liste der respondenten kan velge ett eller flere alternativer. Som standard gjengis valg som avkrysningsbokser. Den lagrede verdien er en mellomrom-separert liste over alle valgte alternativer.

Grunnleggende XLSForm-spesifikasjon

survey-regneark:

typenamelabel
select_multiple cropscrops_grownHvilke vekster dyrker husholdningen?

choices-regneark:

list_namenamelabel
cropsmaizeMais
cropsbeansBønner
cropsriceRis
cropsvegetablesGrønnsaker
cropsotherAnnet

Lagret dataformat

Den eksporterte kolonnen inneholder en mellomrom-separert liste over valgte verdier:

  maize beans vegetables
  

Bruk selected()-funksjonen — ikke = — når du tester select_multiple-verdier i uttrykk (se nedenfor).

Brukstilfeller

Select_multiple-spørsmål brukes for:

  1. Samle inn flere gjeldende svar (f.eks. inntektskilder, vekster dyrket, symptomer)
  2. Avkrysningsboks-stil samtykkeelementer (f.eks. “Velg alle som gjelder”)
  3. Språk- eller ferdighetsoversikter
  4. Spørsmål der flere svar er gyldige simultant

Utseendealternativer

UtseendeBeskrivelse
(ingen)Standard avkrysningsbokser, én per linje
minimalNedtrekksmeny multi-select widget
compactKompakt grid, kolonner justeres til skjermbredde
compact-NKompakt grid tvunget til N kolonner
horizontalValg arrangert horisontalt i en rad (web)
horizontal-compactHorisontal, kompakt avstand (web)
labelViser bare etiketter, ingen avkrysningsbokser (bruk med list-nolabel)
list-nolabelViser bare avkrysningsbokser, ingen etiketter (bruk med label)
columns(N)Vis i N kolonner (rtSurvey-utvidelse)

Eksempel: 3-kolonne kompakt oppsett

typenamelabelappearance
select_multiple symptomssymptomsVelg alle observerte symptomercompact-3

Bruke selected() i uttrykk

Fordi den lagrede verdien er en mellomrom-separert streng, du bruke selected() for å teste om et spesifikt alternativ ble valgt. Bruk av = vil ikke fungere korrekt.

I relevant

Vis et oppfølgingsspørsmål bare hvis “other” ble valgt:

typenamelabelrelevant
select_multiple cropscrops_grownHvilke vekster dyrkes?
textcrops_otherVennligst spesifiser andre veksterselected(${crops_grown}, 'other')

I constraint

Krev minst 2 valg:

typenameconstraintconstraint_message
select_multiple issuesissuescount-selected(.) >= 2Velg minst 2 problemer

Begrens til maksimalt 3:

typenameconstraintconstraint_message
select_multiple prioritiesprioritiescount-selected(.) <= 3Velg ikke mer enn 3 prioriteter

“Ingen av disse” / eksklusivt alternativ

Et vanlig mønster er å gjøre ett alternativ gjensidig eksklusivt med alle andre. Bruk en constraint for å håndheve det:

typenamelabelconstraintconstraint_message
select_multiple issuesissuesVelg alle problemer som er til stedenot(selected(., 'none') and count-selected(.) > 1)“Ingen” kan ikke velges med andre alternativer

Telle og oppsummere valg

FunksjonEksempelResultat
count-selected(field)count-selected(${crops_grown})Antall valg valgt
selected(field, value)selected(${crops_grown}, 'maize')sant/usant
selected-at(field, index)selected-at(${crops_grown}, 0)Første valgte verdi
choice-label(field, value)choice-label(${crops_grown}, 'maize')Etikett for en verdi

Beste praksis

  1. Bruk alltid selected() i relevant, constraint og calculate — aldri = eller !=.
  2. Legg til en begrensning for å begrense maksimalt antall valg hvis spørsmålsdesignet krever det.
  3. Inkluder et “Ingen” eller “Ikke aktuelt”-alternativ når null valg er et gyldig svar.
  4. For lange lister (15+ valg), bruk minimal (multi-select nedtrekksmeny) for å unngå overdreven rulling.
  5. Eksporter data og bruk strengdeling i analyseverktøyet — det mellomrom-separerte formatet krever deling før pivotering.

Begrensninger

  • Select_multiple-verdier kan ikke sammenlignes direkte med =. Bruk alltid selected().
  • Kompakt-utseendet gjengis kanskje ikke bra for svært lange valgetiketter.
  • Når du filtrerer valg med choice_filter, gjelder filtreringen for alle viste valg, samme som select_one.
Var denne siden nyttig?