Hittar inget exempel, men hur fixar man så att man har två selectlistor brevidvaranda och emellan två knappar med "lägg till" och "ta bort".
Hänger ni med... Dvs jag har X antal namn som antingen skall finnas i den ena eller i den andra select listan.
typ som överst påden här sidan: http://www.mattkruse.com/javascript/selectbox/index.html
MEn jag vill kunna skicka med värdena och fixa till den med lite ASP
Såg den tråden, men då Java Script kunskaperna är minimala saknar jag den vanliga HTML koden för att få det att funger för mig..
DVS hur ser HTML-koden ut?
solbulleMedlem sedan mars 20015 287 inlägg Hm... tycker nog Peter S hade en hyfsad kod, med formulär o allt: http://www.webforum.nu/showthread.php?s=&postid=607316#post607316
<script type="text/javascript">
<!--
function move(s){
var
sel=document.forms["f"],
opt=sel.elements[s].options,
i=opt.length,
t=[],
j=null,
k=0,
b=false;
while(i-->0){
switch(opt[i].selected){
case false:
t.push(opt[i]);
break;
default:
b=true;
sel.elements[s=="n1"?"n2":"n1"].options[sel.elements[s=="n1"?"n2":"n1"].options.length] = new Option(opt[i].text);
}
}
j=t.length;
while(j-->0){
opt[k++] = new Option(t[j].text);
}
if(b) opt.length = opt.length-1;
};
//-->
</script>
...
<form onsubmit="return false" name="f">
<div style="float:left">
<select size="12" name="n1">
<option>Kol_1_1</option>
<option>Kol_1_2</option>
<option>Kol_1_3</option>
<option>Kol_1_4</option>
<option>Kol_1_5</option>
<option>Kol_1_6</option>
</select>
</div>
<div style="float:left;width:70px">
<div style="position:relative;top:60px;text-align:center">
<button onclick="move('n1')">--></button><br>
<button onclick="move('n2')"><--</button>
</div>
</div>
<div>
<select size="12" name="n2">
<option>Kol_2_1</option>
<option>Kol_2_2</option>
<option>Kol_2_3</option>
<option>Kol_2_4</option>
<option>Kol_2_5</option>
<option>Kol_2_6</option>
</select>
</div>
</form>
sen får du väl läsa dig fram i tråden, det förefaller som om bitarna löses efter hand där.
Mm, ja man kan ju inte se allt. *tack*
<script type="text/javascript">
<!--
function sortAndAdd(f,o){
var t = [], added=false, sel=null;
for( var i=0, elm; ( elm=f.options[i] ); i++ ){
if(!added && o.text < elm.text){
t.push(o);
sel=i;
added=true;
}
t.push(elm);
}
if(!added) t.push(o);
f.options.length=0;
for( var i=0, elm; ( elm=t[i] ); i++ )
f.options[i] = new Option(elm.text,elm.value);
f.options[typeof(sel)=="number"?sel:f.options.length-1].selected=true;
};
function move(s){
var
sel=document.forms["f"],
opt=sel.elements[s].options,
i=opt.length,
t=[],
j=null,
k=0,
b=false;
while(i-->0){
switch(opt[i].selected){
case false:
t.push(opt[i]);
break;
default:
b=true;
sortAndAdd(sel.elements[s=="n1"?"n2":"n1"], new Option(opt[i].text,opt[i].value));
}
}
j=t.length;
while(j-->0) opt[k++] = new Option(t[j].text,t[j].value);
if(b) opt.length = opt.length-1;
};
function selectAll(o){
var f=o.elements["n2"].options, j=f.length;
while(j-->0) f[j].selected = true;
};
//-->
</script>
...
<form action="t.asp" method="get" name="f" onSubmit="selectAll(this)">
<div style="float:left">
<select size="12" name="n1">
<option>Kol_1_1</option>
<option>Kol_1_2</option>
<option>Kol_1_3</option>
<option>Kol_1_4</option>
<option>Kol_1_5</option>
<option>Kol_1_6</option>
</select>
</div>
<div style="float:left;width:70px">
<div style="position:relative;top:60px;text-align:center">
<button onclick="move('n1')">--></button><br>
<button onclick="move('n2')"><--</button>
</div>
</div>
<div>
<select size="12" name="n2" multiple="true">
<option>Kol_2_1</option>
<option>Kol_2_2</option>
<option>Kol_2_3</option>
<option>Kol_2_4</option>
<option>Kol_2_5</option>
<option>Kol_2_6</option>
</select>
</div>
<INPUT TYPE="submit" VALUE="Skicka">
</form>
Koden ovan fungerar bra sälänge man inte flyttar värdena fram och tillbaka,gör man det så skickas bara toma värden vidare när man klickar påsubmit