Avatar billede qub- Novice
08. december 2011 - 20:08 Der er 7 kommentarer og
1 løsning

Checkbox select alle med specifik navn

Hejsa

Jeg er igang med at lave en vagtplanlægningsscript i php, men har fået lidt problemer da jeg skal have noget javascript ind over.

Scriptet er bygget op således:
De forskellige grupper bliver postet ned af en liste.
Under hver enkel gruppe bliver alle gruppemedlemmerne postet.
Og under hver enkelt gruppe medlem er der en checkbox - dette checkbox navn er fx. cb_15[] - hvor 15 er brugerens id (skal bruges når jeg opdatere siden)

De enkelte checkbox'e repræsentere de enkelte vagter, så tænkte at jeg evt. skulle tilføje vagt id'en til checkboxen også.


Jeg skal så under grupper kunne trykke på checkboxen i den gældende vagt, og alle medlemmers checkboxe i denne gruppe skal så krydses af automatisk..


Nogen der kan hjælpe...? :)


// Casper
Avatar billede olsensweb.dk Ekspert
08. december 2011 - 21:08 #1
er det noget af dette du vil http://olsensweb.dk/test/experten/spm/952876/
ellers må du lige lægge noget code ud
Avatar billede olebole Juniormester
08. december 2011 - 21:17 #2
<ole>

Brug ronols' struktur - og sæt så vagtens id som value på checkbox'en

/mvh
</bole>
Avatar billede qub- Novice
08. december 2011 - 21:34 #3
Det er meget tæt på..

Men brugerens id's kendes ikke. Så systemet skal gå ind og finde en del af navnet.. Hvis det kan lade sig gøre?

navnet på checkbox er fx: cb_3_16[]

Så skal Checkall finde alle de checkboxe med: cb_3_
og glemme det sidste..
Avatar billede olebole Juniormester
09. december 2011 - 01:23 #4
Nu må du prøve at blive enig med dig selv om, hvordan mønstret på navnet ser ud. Ikke "dette checkbox navn er fx. cb_15[]" det ene øjeblik og "navnet på checkbox er fx: cb_3_16[]" det andet.

Hvis de 16 handler om "De enkelte checkbox'e repræsentere de enkelte vagter, så tænkte at jeg evt. skulle tilføje vagt id'en til checkboxen også." - kan du bare skrive:


<input type="checkbox" name="cb_3[]" value="1">
<input type="checkbox" name="cb_3[]" value="2">
<input type="checkbox" name="cb_3[]" value="3">
... ... ...
<input type="checkbox" name="cb_3[]" value="16">


Så kan du bladre $_POST['cb_3'] igennem på serveren og få de vagt id'er, den pågældende har afkrydset.

Gør du det, bruger du ronols' script og lader PHP udskrive knappen (med det korrekte JS-kald), mens du i forvejen er i gang med at udskrive checkbox'ene.
Avatar billede qub- Novice
09. december 2011 - 14:15 #5
Jeg ved det godt - og mange gange undskyld for det..
Og ville rigtig gerne gøre det på den måde du siger, men det kan ikke lade sig gøre.. :/

Min Checkbox i gruppe delen ser således ud:
<input type="checkbox" onClick="CheckAll('form1', 'cb_??[]')" class="input-radio" name="group" value="">

Og under medlemmerne:
<input type="checkbox" class="input-radio" name="cb_gruppeid[]" value="vagt_id">

Problemet er at jeg under gruppe sektionen ikke kender de specifikke brugerid'er..

Og din løsning med value kan jeg ik da value allerede er optaget til vagt id'en...
Har her nu i et par timer prøver at løse problemet i php delen, ud fra ronols fremragende script - og det kan sku ik lade sig gøre.. :/
Avatar billede qub- Novice
09. december 2011 - 14:24 #6
jeg har uploadet et screenshot af systemet, hvis det gir bedre mening med det..

http://imageshack.us/f/267/unavngivetdr.jpg/
Avatar billede qub- Novice
14. december 2011 - 21:18 #7
Nå mange mange tak for hjælpen alligevel..

Jeg har fået løst det med følgende:

function checkAllGroup(prefix, state){
  for (i=0;i<document.form.elements.length;i++) {
      if (document.form.elements[i].type=="checkbox") {
          if((document.form.elements[i].name.indexOf(prefix) >= 0) && ()) {
                  if(state == 'check') {
                      document.form.elements[i].checked = true;
                  }
                  else {
                      document.form.elements[i].checked = false;
                  }
          }
      }
  }   
}


Smid svar hvis i vil ha point alligevel...
Avatar billede qub- Novice
07. marts 2012 - 05:22 #8
lukker
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester