<select id="lstStuff" name="mark[]" multiple="multiple" onChange="lstStuff_OnChange()"></select>
<a href="javascript:selectAll('lstStuff', true);">Все</a>
<a href="javascript:selectAll('lstStuff', false);">Очистить</a>
<select id="lstOtherStuff" name="seria[]" multiple="multiple" ></select>
<a href="javascript:selectAll('lstOtherStuff', false,);">Очистить</a>
<script type="text/javascript" charset="utf-8">
var otherStuff = {
"item 1" : [ "subitem 1.1", "subitem 1.2", "subitem 1.3", "subitem 1.4" ],
"item 2" : [ "subitem 2.1", "subitem 2.2" ],
"item 4" : [ "subitem 4" ],
"item 6" : [ "subitem 6.1", "subitem 6.2" ]
};
var sersel = new Array("subitem 1.3","subitem 2.1","item 4","subitem 6.2");
function selectAll(listName, selected) {
var listBox = document.getElementById(listName);
for(i=0; i<listBox.length; i++) {
listBox.options[i].selected=selected;
}
if( listBox.onchange ) {
listBox.onchange();
}
}
function lstStuff_OnChange() {
var listBox = document.getElementById("lstStuff");
var subListBox = document.getElementById("lstOtherStuff");
subListBox.options.length=0;
for(i=0; i<listBox.length; i++) {
if( listBox.options[i].selected ) {
var key = listBox.options[i].text;
if(otherStuff[key]) {
for(j=0; j<otherStuff[key].length; j++) {
var optn = document.createElement("option");
optn.text = otherStuff[key][j];
optn.value = otherStuff[key][j];
for(w=0; w<sersel.length; w++)
{
if (sersel[w] == otherStuff[key][j]){optn.selected=true;}
}
subListBox.options.add(optn);
}
}
}
}
}
</script>
Уважаемые знатоки очень нужна ваша помощь выше приведенный код выводит два мульти селекта при выборе первой на второй выводиться список
options ни как не могу сделать что бы значения в массиве
sersel были selected