Avatar billede donslund Nybegynder
10. marts 2005 - 12:34 Der er 14 kommentarer og
1 løsning

Fortsættelse af spørgsmål

Dette er en fortsættelse af http://eksperten.dk/spm/596050

<script type="text/javascript">
var checkedElms = "";
function markChecks(elm){
  if(elm.checked){
    if(checkedElms.indexOf(elm.value)==-1){
    checkedElms += ";" + elm.value;
    }
  }else{
    var reg = new RegExp(";?" + elm.value,"i");
    checkedElms = checkedElms.replace(reg,"");
  }
  if(checkedElms.indexOf(";")==0)
    checkedElms = checkedElms.substring(1);
  checkedElms = checkedElms.replace(/;;/g,";");
document.getElementById("valgte").value = checkedElms;
}
</script>

Hvad gør jeg hvis checkedElms allerede indeholder noget, så virker dette jo ikke. Det skal bruges til et site hvor man kan afkrydse forskellige muligheder. Hvis man senere vil ændre hvad man har valgt, så er nogle felter jo afkrydset når man kommer ind på siden.
Avatar billede roenving Novice
10. marts 2005 - 12:56 #1
Men den fjerner jo forekomster, som er i checkedElms i forvejen ...
Avatar billede donslund Nybegynder
10. marts 2005 - 13:09 #2
Der er vist det jeg tror der er problemet. Kunne man ikke når siden bliver hentet tildele værdien af de allerede markerede felter til checkedElms?
Avatar billede roenving Novice
10. marts 2005 - 13:18 #3
Tjah, så skal vi jo kende en måde at finde de relevante elementer, men ellers sådan:

window.onload = function(){
  var elms = document.getElementsByTagName('INPUT');
  for(i=0;elms.length>i;i++){
    if(elms[i].type == "checkbox" && elms[i].checked)
    checkedElms += ";" + elm.value;
  }
  checkedElms = checkedElms.substring(1);
}
Avatar billede donslund Nybegynder
10. marts 2005 - 13:27 #4
Når jeg åbner vinduet er værdierne med sådan: monitors.php?checked=1;3;2
Avatar billede roenving Novice
10. marts 2005 - 13:28 #5
-- og så vil du have dem afkrydset eller ?-)
Avatar billede donslund Nybegynder
10. marts 2005 - 13:31 #6
Altså dem der findes i variablen checked er også checked når siden åbner, men hvis jeg trykker ok med det samme indeholder checkedElms ingenting og den skulle jo gerne fra starten indeholde den samme værdi som checked.
Avatar billede roenving Novice
10. marts 2005 - 13:35 #7
<script type="text/javascript">
var checkedElms = (location.search && location.indexOf('checked=')>0)?location.search.split('checked=')[1]:"";

function markChecks(elm){
Avatar billede donslund Nybegynder
10. marts 2005 - 14:45 #8
Nu er den rigtig fra starten, men de fjernes ikke fra checkedElms når de fravælges.
Avatar billede roenving Novice
11. marts 2005 - 10:24 #9
-- men det virker med at skrive nye ind i ?-)
Avatar billede donslund Nybegynder
11. marts 2005 - 13:45 #10
Okay. Jeg kan godt se, at jeg er besværlig. :-)

Mon det er muligt først at samle de checkede op når vinduet lukkes. På noget onClick på en knap.
Avatar billede donslund Nybegynder
14. marts 2005 - 11:03 #11
Jeg lukker her. Smider du lige et svar?
Avatar billede roenving Novice
14. marts 2005 - 22:37 #12
Det lyder som det er en onsubmit-ting, du har brug for ?-)
Avatar billede donslund Nybegynder
15. marts 2005 - 08:21 #13
Jeps. Jeg har fundet en løsning på problemet. Men som altid melder der sig nye udfordringer hver gang man får løst et problem. Men det er vel derfor vi bliver ved ...
Avatar billede roenving Novice
16. marts 2005 - 11:32 #14
Oki -- og velbekomme '-)
Avatar billede roenving Novice
19. marts 2005 - 05:53 #15
Tak for point ;~}
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