почти получилось, осталось мелочь...
сейчас скрипт выглядит так
<!--
var aHouseValues = new Array();
aHouseValues["коммунарский"] = "16/6, 20, 115";
aHouseValues["красноармейская"] = "20";
aHouseValues["гастелло"] = "120";
aHouseValues["мерлина"] = "20";
aHouseValues["кукушкина"] = "100";
// ф-ция, возвращающая массив домов по заданной улице
function getHouseValuesByStreet(param){
var sHouseValues = aHouseValues[param];
return sHouseValues.split(", "); // преобразуем строку в массив домов
}
// главная ф-ция, выводящая динамически список домов
function MkHouseValues(param){
var aCurrHouseValues = getHouseValuesByStreet(param);
var oHouseList = document.forms["address"].elements["house"];
var oHouseListOptionsCnt = oHouseList.options.length;
oHouseList.length = 0; // удаляем все элементы из списка домов
for (aCurrHouseValue in aCurrHouseValues){
// далее мы добавляем необходимые дома в список
if (document.createElement){
var newHouseListOption = document.createElement("OPTION");
newHouseListOption.text = aCurrHouseValues[aCurrHouseValue];
newHouseListOption.value = aCurrHouseValues[aCurrHouseValue];
// тут мы используем для добавления элемента либо метод IE, либо DOM, которые, alas, не совпадают по параметрам…
(oHouseList.options.add) ? oHouseList.options.add(newHouseListOption) : oHouseList.add(newHouseListOption, null);
}else{
// для NN3.x-4.x
oHouseList.options[aCurrHouseValue] = new Option(aCurrHouseValues[aCurrHouseValue], aCurrHouseValues[aCurrHouseValue], false, false);
}
}
}
// инициируем изменение элементов в списке домов, в зависимости от текущей улицы
MkHouseValues(document.forms["address"].elements["street"].value);
//-->
а форма так
<form name="address" action="#">
Улица:
<select name="street" onChange="MkHouseValues(this.Value)">
<OPTION VALUE="гастелло">гастелло</OPTION>
<OPTION VALUE="коммунарский">коммунарский</OPTION>
<OPTION VALUE="красноармейская">красноармейская</OPTION>
<OPTION VALUE="кукушкина">кукушкина</OPTION>
<OPTION VALUE="мерлина">мерлина</OPTION>
</select>
Дом:
<select name="house">
<option value="N/A">выберите улицу</option>
</select>
</form>
если в форме вместо <select name="street" onChange="MkHouseValues(this.Value)">
я поставлю <select name="street" onChange="MkHouseValues('коммунарский' )">
то дома по коммунарскому находятся. то есть осталась одна проблема - корректно передать value из option в яваскрипт...
помогите пожалуйста