Показать сообщение отдельно
  #1 (permalink)  
Старый 06.07.2011, 21:38
Новичок на форуме
Отправить личное сообщение для sslab Посмотреть профиль Найти все сообщения от sslab
 
Регистрация: 06.07.2011
Сообщений: 7

Массив не заполняется в цикле
Доброго времени суток.

Есть проблемка, на решении которой зациклился просто уже. А суть проблемки вот в чем. Есть такой кусок кода:
var card_type_sel = [];
var maxInd = 0;

$(
	function() 
		{
			maxInd = window.frames.length - 1;
				
			list_init();
		}
	);
	
	function list_init()
		{
			for (var i=0; i < maxInd; i++)
				{
					sensor_index = i+1;
					
					if (document.getElementById("id_" +sensor_index+ "") != null)
						{
							var card_type_sel_temp = $(document.getElementById("id_" +sensor_index+ "").contentDocument.getElementById("card_type"));
							card_type_sel[i] = card_type_sel_temp
								.multiselect
									(
										{
											header: "Выберите только одно авто",
											selectedList:1,
											noneSelectedText: 'Выберите авто',
											click: function(e)
												{
													if( $(this).multiselect("widget").find("input:checked").length > 1 )
														{
															alert("Можно выбирать только 1 автомобиль")
															return false;
														}
												}
										}
									)
								.multiselectfilter();
						}
				}
		}


и если далее в какой либо функции использовать массив card_type_sel, то он окажется пуст, но если после строки
var card_type_sel_temp = $(document.getElementById("id_" +sensor_index+ "").contentDocument.getElementById("card_type"));

поставить alert или же на ней в FireBug поставить точку останова и шагать построково, то тогда массив заполнится.
В чем фокус и как решить данную проблему?

Заранее спасибо за советы!
Ответить с цитированием