Overføre options fra én select til en anden
Hej !Jeg har fundet flg. kode via google. Problemet er, at jeg kan ikke få det til at virke efter hensigten. Og hvad er hensigten så? Jo, nu skal du høre:
Jeg har forskellige select's efter hvilken landsdel, der er blevet valgt. Det skal så være muligt at over når man trykker på en option i select'en skal den overføre til den anden select.
MIN KODE:
------------------
<script type="text/javascript">
<!--
var NS4 = (navigator.appName == "Netscape" && parseInt(navigator.appVersion) < 5);
function addOption(theSel, theText, theValue)
{
var newOpt = new Option(theText, theValue);
var selLength = theSel.length;
//theSel.options[selLength] = newOpt;
var dup = 0
for(i=0; i<selLength; i++)
{
//alert(newOpt.value+ ' ' +theSel.options[i].value)
if (newOpt.value==theSel.options[i].value){ dup =1; }
}
if (dup ==0)
{
theSel.options[selLength] = newOpt;
//theSel.options[selLength].selected = true;
}
//alert(theSel.options[selLength].value + ' ' + selLength);
}
function deleteOption(theSel, theIndex)
{
var selLength = theSel.length;
if(selLength>0)
{
theSel.options[theIndex] = null;
}
}
function moveOptions(theSelFrom, theSelTo)
{
var selLength = theSelFrom.length;
var selectedText = new Array();
var selectedValues = new Array();
var selectedCount = 0;
var i;
// Find the selected Options in reverse order
// and delete them from the 'from' Select.
for(i=selLength-1; i>=0; i--)
{
if(theSelFrom.options[i].selected)
{
selectedText[selectedCount] = theSelFrom.options[i].text;
selectedValues[selectedCount] = theSelFrom.options[i].value;
deleteOption(theSelFrom, i);
selectedCount++;
}
}
// Add the selected text/values in reverse order.
// This will add the Options to the 'to' Select
// in the same order as they were in the 'from' Select.
for(i=selectedCount-1; i>=0; i--)
{
addOption(theSelTo, selectedText[i], selectedValues[i]);
}
if(NS4) history.go(0);
}
//-->
</script>
<form action="" method="post">
<div id="MidtVestsjælland" style="display:none;">
<select name="MidtVestsjælland" disabled="disabled" size="8" onchange="moveOptions('MidtVestsjælland','postalcodes')">
<option value="4000">4000 Roskilde</option>
<option value="4030">4030 Tune</option>
<option value="4040">4040 Jyllinge</option>
<option value="4050">4050 Skibby</option>
<option value="4060">4060 Kirke Såby</option>
<option value="4070">4070 Kirke Hyllinge</option>
<option value="4100">4100 Ringsted</option>
<option value="4130">4130 Viby Sjælland</option>
<option value="4140">4140 Borup</option>
<option value="4160">4160 Herlufmagle</option>
<option value="4171">4171 Glumsø</option>
<option value="4173">4173 Fjenneslev</option>
<option value="4174">4174 Jystrup Midtsjælland</option>
<option value="4180">4180 Sorø</option>
<option value="4190">4190 Munke Bjergby</option>
<option value="4200">4200 Slagelse</option>
<option value="4220">4220 Korsør</option>
<option value="4230">4230 Skælskør</option>
<option value="4241">4241 Vemmelev</option>
<option value="4242">4242 Boeslunde</option>
<option value="4243">4243 Rude</option>
<option value="4250">4250 Fuglebjerg</option>
<option value="4261">4261 Dalmose</option>
<option value="4262">4262 Sandved</option>
<option value="4270">4270 Høng</option>
<option value="4281">4281 Gørlev</option>
<option value="4291">4291 Ruds Vedby</option>
<option value="4293">4293 Dianalund</option>
<option value="4295">4295 Stenlille</option>
<option value="4296">4296 Nyrup</option>
<option value="4300">4300 Holbæk</option>
<option value="4320">4320 Lejre</option>
<option value="4330">4330 Hvalsø</option>
<option value="4340">4340 Tølløse</option>
<option value="4350">4350 Ugerløse</option>
<option value="4360">4360 Kirke Eskilstrup</option>
<option value="4370">4370 Store Merløse</option>
<option value="4390">4390 Vipperød</option>
<option value="4400">4400 Kalundborg</option>
<option value="4420">4420 Regstrup</option>
<option value="4440">4440 Mørkøv</option>
<option value="4450">4450 Jyderup</option>
<option value="4460">4460 Snertinge</option>
<option value="4470">4470 Svebølle</option>
<option value="4480">4480 Store Fuglede</option>
<option value="4490">4490 Jerslev Sjælland</option>
<option value="4500">4500 Nykøbing Sjælland</option>
<option value="4520">4520 Svinninge</option>
<option value="4532">4532 Gislinge</option>
<option value="4534">4534 Hørve</option>
<option value="4540">4540 Fårevejle</option>
<option value="4550">4550 Asnæs</option>
<option value="4560">4560 Vig</option>
<option value="4571">4571 Grevinge</option>
<option value="4572">4572 Nørre Asmindrup</option>
<option value="4573">4573 Højby</option>
<option value="4581">4581 Rørvig</option>
<option value="4583">4583 Sjællands Odde</option>
<option value="4591">4591 Føllenslev</option>
<option value="4592">4592 Sejerø</option>
<option value="4593">4593 Eskebjerg</option>
<option value="4600">4600 Køge</option>
<option value="4621">4621 Gadstrup</option>
<option value="4622">4622 Havdrup</option>
<option value="4623">4623 Lille Skensved</option>
<option value="4632">4632 Bjæverskov</option>
<option value="4640">4640 Faxe</option>
<option value="4652">4652 Hårlev</option>
<option value="4653">4653 Karise</option>
<option value="4654">4654 Faxe Ladeplads</option>
<option value="4660">4660 Store Heddinge</option>
<option value="4671">4671 Strøby</option>
<option value="4672">4672 Klippinge</option>
<option value="4673">4673 Rødvig Stevns</option>
<option value="4681">4681 Herfølge</option>
<option value="4682">4682 Tureby</option>
<option value="4683">4683 Rønnede</option>
<option value="4684">4684 Holmegaard</option>
<option value="4690">4690 Haslev</option>
<option value="4700">4700 Næstved</option>
<option value="4720">4720 Præstø</option>
<option value="4733">4733 Tappernøje</option>
<option value="4735">4735 Mern</option>
<option value="4736">4736 Karrebæksminde</option>
<option value="4750">4750 Lundby</option>
<option value="4760">4760 Vordingborg</option>
<option value="4771">4771 Kalvehave</option>
<option value="4772">4772 Langebæk</option>
<option value="4773">4773 Stensved</option>
</select>
<a href="#" onclick="moveOptions('MidtVestsjælland', 'postalcodes')">Vælg alle</a>
</div>
</form>
<select name="postalcodes" size="8" style="width: 100px;">
</select>
