Ja... jeg ved godt at det kan klares med radiobuttons, men kunden insisterer: Det SKAL være checkboxes.
Jeg har en række checkboxes med samme navn, men der skal kun kunne vælges en af gangen, så når en checkes, skal andre med samme navn uncheckes, og det skal så også være muligt at unchecke den valgte som normalt med checkboxes.
function checkboxClick(obj) { try { // Hvis aktuel CheckBox ikke er afkrydset // behøver vi ikke at gøre noget. if (! obj.checked) return;
// Antal CheckBokse i alt var maxcb = 5; // Nummer på den aktuelle CheckBox var nr = obj.id; nr = parseInt(right(nr,1),10);
// Loop gennem alle Checkbokse og fjern afkrydsning // dog ikke den Checkbox som netop er krydset af for (var i = 0; i < maxcb; i++) { var checkbox = document.getElementById('CheckBox' + i); if (checkbox.checked && i !== nr) { checkbox.checked = 0; } } } catch(ex) { } }
//------------------------------------------------------- //Funktion som returner højre del af en streng. //Variabel 'num' er antal karakterer
function right(str, num) { return str.substring(str.length - num); // pull out right num }
Hvis du er professionel, er det din opgave at forklare kunden, at det er 'no-go #1' at ændre på elementers forventede virkemåde - og at han skyder sig selv i foden. Hvis du har faglig troværdighed nok, vil han ikke være i tvivl =)
Det er sådan set bare java-delen jeg er interesseret i, men når du spør' så er det en god gammeldags asp-side formularen skal bruges på :) Men det burde ikke være den store omskrivning.
Hvordan vil dette script fungere, hvis der er flere formularer på samme side? Og for den sags skyld, hvis der er flere "grupper" af checkboxes i samme formular. I det tilfælde er det jo så kun de checkboxes med samme navn som den der afkrydses, der skal tages action på.
-> #0 - som ole skriver, er det ikke særlig brugervenligt at lave det med checkboxes, da brugeren ikke forventer at de virker som radiobuttons. desuden er det nemmere og hurtigere at løse det med "den rigtige" metode; radiobuttons.
en anden ting: java og javascript er to vidt forskellige ting.
Helt enig, bør laves med radiobuttons. Det var blot et eksempel på, at det kan laves i checkboxes, men det er jo som ole skriver, ikke det checkbox er beregnet til. Nu ved jeg ikke om der i asp som i aspx også findes checkboxlist, så kan det laves noget enklere og smartere end det forslag jeg kom med i starten, især hvis du har flere grupper af checkboxes. Men du må prøve at overbevise kunden...
Synes godt om
Ny brugerNybegynder
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.