Hake av sjekkbokser ut fra valg

Har behov for å kunne hake av en sjekkboks ut fra valg gjort. Eks hvis en kommune velges i en nedtrekksliste og flere kommuner skal velges skulle den kommunen som allerede er valgt i nedtrekkslista allerede være haket av. Noen som har tips?

interactcom1

Sjekkboksene genereres ut fra samme datakilde som nedtrekkslista. Alternativet er å skrive en kode for å ta ut valgt kommune fra genereringen av sjekkboksene. Ikke at jeg har den klart for meg heller :slight_smile:

1 Like

Hei

Det er i hvert fall to muligheter her - kanskje flere. Jeg ville gjort slik:

  1. Hvis lista med kommuner ikke er altfor lang, ville jeg bare ha presentert den rett ut som en sjekkboksliste. Alfabetisk sortering kan være en måte å gjøre lista mer oversiktlig på.

  2. Dersom lista med kommuner er så lang at den blir uoversiktlig ved en ren utlisting ved hjelp av sjekkbokser, tror jeg jeg ville ha puttet hele nedtrekkslista inn en “legg til-liste”. Da har jo brukeren mulighet til å velg to eller flere kommuner, og valgene vil bli lagret i opplistingen som vises nederst i “legg til-lista”.

Narve Strand
Konsulent Interact
ACOS

Lista vil variere ut i fra valg gjort før skjermbildet. Altså den henter informasjon fra en datakilde. Vi opererer med regioner i Norge slik at en kommuneliste kan inneholde 20-30 navn. Vi ønsker at de skal velge en hovedkommune/prosjektkommue, men skal ha mulighet til å velge flere av kommunene tilhørende aktuell region.

Mulig det finnes bedre måter å designe dette på, men jeg mener at sjekkbokser er det beste for brukeren. Ønsket vårt er at en av kommunene (den som er valgt som hovedkommune) enten skal være haket av eller ikke skal vises i lista over øvrige kommuner i regionen. Jeg ser ikke helt at en legg-til vil løse dette behovet uten at bruker selv skriver inn kommunennavn og det er ikke så brukervennlig i denne sammenghengen.

Her er et bedre skjermbilde - dette viser mulige valg for regioner. I dette eksemplet har jeg brukt Nordland og Troms. Kommunene i Nordland er alle i fylket, mens Troms er alle i det gamle Troms fylke. Både feltet fro prosjektkommune (nedstresslita) og sjekkbokslista hentes fra en datakilde over samtlige kommuner i Norge som også inneholder hvilken region de skal tilhøre.

Hei

Du skriver: “Ønsket vårt er at en av kommunene (den som er valgt som hovedkommune) enten skal være haket av eller ikke skal vises i lista over øvrige kommuner i regionen.” Under ser du et script som gjør at valgt kommune (prosjektkommune), ikke vises i som valg i en utlisting av svaralternativer i et sjekkboksspørsmål.

var datakilde = datatabeller.Regioner_og_kommuner;
//Peker på aktuell datakilde.

var kommunerIValgtRegion = [];
//Etablerer varibel kommunerIValgtRegion som en tom liste.

var alleKommunerUnntattProsjektkommune = [];
//Etablerer varibel alleKommunerUnntattProsjektkommune som en tom liste.

loop (datakilde)
//Looper gjennom hele datakilden.
{
if (val[“Regioner”] == Velg_en_region)
//Dersom verdien i kolonnen “Regioner” i datakilden er lik valget brukeren har tatt
i skjemaet …
{kommunerIValgtRegion += val[“Kommuner”]};
//… så ta verdien i kolonna “Kommuner” på samme rad, og legg til i lista
kommunerIValgtRegion.
};

{
if (length(Prosjektkommune) > 0)
//Sjekker om bruker har tatt et valg i en nedtrekksliste jeg har kalt
“Prosjektkommune”, som inneholder ALLE kommuner i en region.
{
loop (kommunerIValgtRegion)
//Går gjennom lista med alle kommuner i valgt region.
{
if (val != Prosjektkommune)
//Dersom kommune i lista kommunerIValgtRegion er ULIK valget bruker
har tatt i nedtrekkslista “Prosjektkommune”, …
{alleKommunerUnntattProsjektkommune += val};
//… så legges kommunen til i lista
alleKommunerUnntattProsjektkommune.
};
};
};

return alleKommunerUnntattProsjektkommune;
// Returnerer en liste med alle kommuner i regionen, unntatt prosjektkommunen, for å kunne presentere disse kommunene ut som valg i sjekkbokslista.

Vennlig hilsen
Narve Strand
Konsulent Selvbetjening
ACOS

1 Like

Dette fungerte akkurat som håpet! Tusen takk!

Hadde gått meg bort i alt for komplisert kode :slight_smile: