В форме есть 3 связанных списка.
В режиме редактирования данных списки поочередно загружаются с сервера. Потом устанавливается заранее выбранные значения "selected".
Что интересно, что первый и третий справочники загружаются в список, а второй "неуспевает": т.е. его список <select> пустой.
Может кто подскажет в чем может быть дело?
<table>
<tr>
<td>Регион:</td>
<td>
<select name="Region" id="Region" onchange="getXML('xml.php?type=city&id=' + this.value, 'City');" >
<option value=0></option>
</select>
</td>
</tr>
<tr>
<td>Город:</td>
<td>
<select name="City" id="City" onchange="getXML('xml.php?type=cafe&id='+ this.value, 'Cafe');">
<option>----</option>
</select>
</td>
</tr>
<tr>
<td>Заведение:</td>
<td>
<select id="Cafe" name="cafe_id[]" multiple="10" >
</select>
</td>
</tr>
</table>
Скрипт для загрузки отрабатывает правильно.
function editAdvertising(responseXML){
$(responseXML).find("advert").each(function() {
getXML('xml.php?type=region', 'Region'); // справочник регионов загружен верно
$("#Region").val( $(this).find('region').text() );//установить выбор
// вот тут не выводит список хоть тресни! Хотя getXML отрабатывает верно
getXML('xml.php?type=city&id='+$(this).find('region').text(), 'City');// город - не загружается!
$("#City").val( $(this).find('city').text() );
getXML('xml.php?type=cafe&id='+$(this).find('city').text(), 'Cafe');// иногда сюда втюхивает другие данные (1 или 2 спр-к)
$("#Cafe").val( $(this).find('cafes').text() );
});
};
При работе "вручную" справочники, разумеется, отрабатывают правильно.
И еще бывает такой глюк, что в третий select загоняет список из других.
Может кто скажет где ошибка или как выкрутиться?
Заранее благодарен.