/    Sign up×
Community /Pin to ProfileBookmark

Multiple selections not working

Im new to javascript and i’m not sure whats going on with this, its something to do with the

selectedList.appendChild(availableList.options.item(md));

when i take this out and do a alert all the correct indexs show up, but when that is in it seems to only take half of the selections. so if theres 12 selections it will only take 6, then if there is 6 only 3 etc..

Please help!!!!! thanks in advanced

here is the function

function addAttribute(select){
//alert(select.selectedIndex)

var output = new Array();
var options = select.options, option, k=0;

// fill array

while(option=options[k++]){

if(option.selected){
output[output.length] = option.index;
// array -> string; put in box
select.form.outputbox.value = output.join(” “);
//alert(output.join(” “))
var md = output.join(” “);

selectedList.appendChild(availableList.options.item(md));

}
}

}

here is the htm file

<!DOCTYPE html PUBLIC “-//W3C//DTD HTML 4.01 Transitional//EN”>

<html>
<head>
<meta name=”generator” content=”HTML Tidy, see www.w3.org”>

<title>List Box Demo</title>

<script language=”javascript” src=”option.js”>
</script>

</head>

<body onload=”createListObjects()”>
<script language=”javascript”>
<!–

function CreateProvince() {

var Primary = document.newforms.country.selectedIndex;

if ((Primary == null) || (Primary == 0)) return;

if (Primary == 1) {

var ProvState = new Array;
ProvState[0] = new Option(“Alberta”);
ProvState[1] = new Option(“British Columbia”);
ProvState[2] = new Option(“Manitoba”);
ProvState[3] = new Option(“New Brunswick”);
ProvState[4] = new Option(“Newfoundland”);
ProvState[5] = new Option(“Nova Scotia”);
ProvState[6] = new Option(“Northwest Territories”);
ProvState[7] = new Option(“Nunavut”);
ProvState[8] = new Option(“Ontario”);
ProvState[9] = new Option(“Prince Edward Island”);
ProvState[10] = new Option(“Quebec”);
ProvState[11] = new Option(“Saskatchewan”);
ProvState[12] = new Option(“Yukon”);

}

if (Primary == 2) {

var ProvState = new Array;
ProvState[0] = new Option(“Alabama”);
ProvState[1] = new Option(“Alaska”);
ProvState[2] = new Option(“Arizona”);
ProvState[3] = new Option(“Arkansas”);
ProvState[4] = new Option(“California”);
ProvState[5] = new Option(“Colorado”);
ProvState[6] = new Option(“Connecticut”);
ProvState[7] = new Option(“Delaware”);
ProvState[8] = new Option(“Florida”);
ProvState[9] = new Option(“Georgia”);
ProvState[10] = new Option(“Hawaii”);
ProvState[11] = new Option(“IdahoState”);
ProvState[12] = new Option(“Illinois”);
ProvState[13] = new Option(“Indiana”);
ProvState[14] = new Option(“Iowa”);
ProvState[15] = new Option(“Kansas”);
ProvState[16] = new Option(“Kentucky”);
ProvState[17] = new Option(“Louisiana”);
ProvState[18] = new Option(“Maine”);
ProvState[19] = new Option(“Maryland”);
ProvState[20] = new Option(“Massachusetts”);
ProvState[21] = new Option(“Michigan”);
ProvState[22] = new Option(“Minnesota”);
ProvState[23] = new Option(“Mississippi”);
ProvState[24] = new Option(“Missouri”);
ProvState[25] = new Option(“Montana”);
ProvState[26] = new Option(“Nebraska”);
ProvState[27] = new Option(“Nevada”);
ProvState[28] = new Option(“NewHampshire”);
ProvState[29] = new Option(“NewJersey”);
ProvState[30] = new Option(“NewMexico”);
ProvState[31] = new Option(“NewYork”);
ProvState[32] = new Option(“NorthCarolina”);
ProvState[33] = new Option(“NorthDakota”);
ProvState[34] = new Option(“Ohio”);
ProvState[35] = new Option(“Oklahoma”);
ProvState[36] = new Option(“Oregon”);
ProvState[37] = new Option(“Pennsylvania”);
ProvState[38] = new Option(“RhodeIsland”);
ProvState[39] = new Option(“SouthCarolina”);
ProvState[40] = new Option(“SouthDakota”);
ProvState[41] = new Option(“Tennessee”);
ProvState[42] = new Option(“Texas”);
ProvState[43] = new Option(“Utah”);
ProvState[44] = new Option(“Vermont”);
ProvState[45] = new Option(“Virginia”);
ProvState[46] = new Option(“Washington”);
ProvState[47] = new Option(“WestVirginia”);
ProvState[48] = new Option(“Wisconsin”);
ProvState[49] = new Option(“Wyoming”);

}

for (i=document.newforms.availableOptions.options.length; i>0; i–) {
document.newforms.availableOptions.options[i] = null;
}

for(i=0; i<ProvState.length; i++) {
document.newforms.availableOptions.options[i] = ProvState[i];
}

document.newforms.availableOptions.options[0].selected = true;

}

//–>
</script>
<form name=”newforms”>
<table border=”0″>
<tr>

<td width=”68″>

<select name=”country” size=”20″ id=”country” onChange=”CreateProvince()” style=”width:200px; height:350px; “>
<option value=””>Choose Country</a>
<option value=”Canada”>Canada</a>
<option value=”USA”>USA</a>
</select>

</td>
<td width=”39″><select name=”availableOptions” size=”20″ multiple id=”availableOptions” style=”width:200px; height:350px; ” >
<option value=””>Choose Country</option>
<option value=””>Choose Country2</option>
<option value=””>Choose Country3</option>
</select>

<input type =”button” value =”- Add -” onclick=”addAttribute(this.form.availableOptions)”>

<input type =”button” value =”- Remove -” onclick=”RmvSelect(this.form.selectedOptions)”>
<input type=”text” name=”outputbox”>
</td>
<td>
<select name=”selectedOptions” size=”20″ multiple id=”selectedOptions” style=”width:200px; height:350px; “>

</select>
</td>

<td width=”27″ valign=”top”><button onclick=”addAll()”>&gt;&gt;&gt;</button>
<br>
<button onclick=”addAttribute()”>&gt;</button>
<br>

<br>
<button onclick=”delAttribute()”>&lt;</button>
<br>
<button onclick=”delAll()”>&lt;&lt;&lt;</button> </td>

<td width=”39″>

</td>
</tr>

<tr>
<td colspan=”3″><button onclick=”showSelected()”>Submit</button> </td>
</tr>
</table>
</form>

</body>
</html>

to post a comment
JavaScript

0Be the first to comment 😎

×

Success!

Help @philcol spread the word by sharing this article on Twitter...

Tweet This
Sign in
Forgot password?
Sign in with TwitchSign in with GithubCreate Account
about: ({
version: 0.1.9 BETA 5.20,
whats_new: community page,
up_next: more Davinci•003 tasks,
coming_soon: events calendar,
social: @webDeveloperHQ
});

legal: ({
terms: of use,
privacy: policy
});
changelog: (
version: 0.1.9,
notes: added community page

version: 0.1.8,
notes: added Davinci•003

version: 0.1.7,
notes: upvote answers to bounties

version: 0.1.6,
notes: article editor refresh
)...
recent_tips: (
tipper: @AriseFacilitySolutions09,
tipped: article
amount: 1000 SATS,

tipper: @Yussuf4331,
tipped: article
amount: 1000 SATS,

tipper: @darkwebsites540,
tipped: article
amount: 10 SATS,
)...