Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Обновление 3-х связанных select (https://javascript.ru/forum/dom-window/27367-obnovlenie-3-kh-svyazannykh-select.html)

swa 10.04.2012 23:08

JQERY не успевает?
 
В форме есть 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 загоняет список из других.

Может кто скажет где ошибка или как выкрутиться?

Заранее благодарен.


Часовой пояс GMT +3, время: 00:35.