10. juni 2009 - 14:34Der er
8 kommentarer og 1 løsning
Knapper aktiveres ved valg af Flueben/checkbox?
Jeg skal have nogle knapper til at være aktive når et flueben markeres, som jeg allerede har fået til at virke fint nok. Men når jeg har to flueben markeret på samme tid skal nogle af knapperne være inaktive, hvilket ikke helt virker for mig.
Det virker heller ikke hvis jeg bruger den samme funktion på flere flueben, så sker der enten en fejl og eller virker det bare ikke. Nogen der kan hjælpe?
Her er koden:
<script type="text/javascript"> function addLoadEvent(func) { var oldonload = window.onload; if (typeof window.onload != 'function') { window.onload = func; } else { window.onload = function() { if (oldonload) { oldonload(); } func(); } } }
Denne side indeholder artikler med forskellige perspektiver på Identity & Access Management i private og offentlige organisationer. Artiklerne behandler aktuelle IAM-emner og leveres af producenter, rådgivere og implementeringspartnere.
Har du andre onload-events, for ellers vil det være en del nemmere bare at sætte tingene direkte ind, og i hvert fald behøver du kun lave een blok, hvis du har andre:
addLoadEvent(function() { var f = document.theForm; f.buttonDelete.disabled=true; f.buttonSendSMS.disabled=true; f.buttonSendMessage.disabled=true; f.buttonEdit.disabled=true; })
-- men jeg gætter på, at du bare skal bruge:
window.onload = function() { var f = document.theForm; f.buttonDelete.disabled=true; f.buttonSendSMS.disabled=true; f.buttonSendMessage.disabled=true; f.buttonEdit.disabled=true; }
-- og du kan eksempelvis:
function theChecker(f){ var chk1 = f.theCheck.checked; var chk2 = f.theCheck2.checked; f.buttonDelete.disabled=!chk1; f.buttonSendSMS.disabled=chk1||chk2; f.buttonSendMessage.disabled=!(chk1||chk2); f.buttonEdit.disabled=!chk1; }
Hov skal faktisk lige høre om noget først... hvad nu hvis jeg har en liste der bliver opdateret jævnligt, f.eks via PHP. Hvordan får jeg det til at virke på alle fluebenene?
Browseren laver fejl og siger at den ikke kan deffinere "1.checked"
Jeg er desværre ikke helt med? - da jeg er elendig til javascript :)
måske kunne du give et eksempel som du startede med?
Desuden hvis du kan hjælpe mig med at få "button.Delete" til kun at være aktive når et flueben er markeret, den må ikke være aktiv hvis to eller flere er markeret.
Det er vel et bestemt flueben, der skal være sat ?-)
-- så tester du 'positivt' for det og 'negativt' for de andre (men da resultatet skal være omvendt, fordi det er disabled, der sættes skal vi vende det -- faktisk to gange !-), f.eks.
Nej.... det skal bare være hvis flere end 2 flueben bliver markeret, så skal én bestemt knap ikke være tilgængelig...
Jeg har 4 knapper, hvor de tre første knapper skal være aktive når et eller flere flueben er markeret, og den sidste knap skal være inaktiv når flere end et flueben er markeret.
... Men så skal jeg vel stadig indtaste et bestemt antal i javascriptet.
så hvis jeg har f.eks 10 checkboxes, så skal det hedde: f.buttonDelete.disabled = !chks[3].checked || chks[1].checked || chks[2].checked || chks[4].checked || chks[6].checked || chks[6].checked || chks[7].checked || chks[8].checked || chks[9].checked || chks[10].checked;
... det vil jeg gerne væk fra, for hvis jeg har 100 :) så bliver det hurtigt uoverskueligt.
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.