Avatar billede fcknet Nybegynder
19. februar 2004 - 22:14 Der er 6 kommentarer og
1 løsning

Værdier fra et fejl til et andet

Jeg har et select felt hvor jeg skal have overført værdierne til en anden selectbox.

Det skal gøres med to pile, både en frem og en tilbage.

Forstår I hvad jeg mener?

Den anden box skal være tom fra starten og så skal jeg kunne smide de værdier over som jeg skal bruge.
Avatar billede grunken Nybegynder
19. februar 2004 - 22:54 #1
sådan ?

<html>
<head>
<script type="text/javascript">
function init(){
  opt = document.form1.liste;
  val = document.form1.start;
}
function tilfoej(){
if(val.selectedIndex!=-1){
  opt[opt.length] = new Option(val[val.selectedIndex].value, val[val.selectedIndex].value);
  val.remove(val.selectedIndex);
}
}
function fjern() {
if(opt.selectedIndex!=-1){
  val[val.length] = new Option(opt[opt.selectedIndex].value, opt[opt.selectedIndex].value);
  opt.remove(opt.selectedIndex);
}
}
</script>
</head>
<body onload="init();">
<form name="form1">
<table>
    <tr>
        <td>
            <select size="5" style="width: 200px;" name="start">
              <option value="blal">blal</option>
              <option value="blab">blab</option>
              <option value="bavl">bavl</option>

        <td>
            <input type="button" value="tilføj >>" onclick="tilfoej()"/>
            <br />
            <input type="button" value="<< fjern" onclick="fjern();"></td>
        <td>
            <select size="5" style="width: 200px;" name="liste"/>
      </td>
    </tr>
</table>
</form>
</body>
</html>
Avatar billede skovenborg Nybegynder
19. februar 2004 - 23:13 #2
ja, nu har grunken jo svaret, men jeg havde lige støbet noget lignende sammen som du kan se på - bare så jeg ikke har spildt min tid ;-)

<script type="text/javascript">
    function addFromTo(from,to) {
        fromElm = document.getElementById(from);
        toElm = document.getElementById(to);
        var sletArr = new Array();
        while (fromElm.selectedIndex != -1) {
            toElm.options[toElm.length] = new Option(fromElm.options[fromElm.selectedIndex].text,fromElm.options[fromElm.selectedIndex].value);
            fromElm.options[fromElm.selectedIndex] = null;
        }
    }
  </script>

<select multiple id="sel1" style="height:200px;width:100px">
  <option value="val1">Value 1</option>
  <option value="val2">Value 2</option>
  <option value="val3">Value 3</option>
  <option value="val4">Value 4</option>
  <option value="val5">Value 5</option>
</select>
<input type="button" value=">>" onclick="addFromTo('sel1','sel2');">
<input type="button" value="<<" onclick="addFromTo('sel2','sel1');">
<select multiple style="height:200px;width:100px" id="sel2">
</select>
Avatar billede fcknet Nybegynder
03. marts 2004 - 18:15 #3
Tak :)
Er det muligt at man kan komme til at flytte flere på en gang???
Avatar billede fcknet Nybegynder
03. marts 2004 - 18:18 #4
Ah det kan skovenborg's jo... Svarer du?
Avatar billede skovenborg Nybegynder
03. marts 2004 - 20:52 #5
jo værsgo' ;-)
Avatar billede fcknet Nybegynder
04. marts 2004 - 12:38 #6
Hvordan får jeg værdierne sendt videre til en anden side? Jeg har lavet en formular, men værdierne fra feltet hvor man smider dem over i kommer kun med når jeg markerer dem før jeg trykker submit.

Hvordan gør jeg i så fald så den markerer automatisk inden den sender?
Avatar billede skovenborg Nybegynder
04. marts 2004 - 17:35 #7
prøv med denne her funktion:
function selectAll(elm) {
        for (i=0;i<elm.length;i++) {
            elm.options[i].selected = true;
        }
    }

og skriv så i den form din selectbox ligger:
<form name="form1" onsubmit="selectAll(this.sel2)">
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