Показать сообщение отдельно
  #1 (permalink)  
Старый 29.08.2012, 22:27
Интересующийся
Отправить личное сообщение для skeef Посмотреть профиль Найти все сообщения от skeef
 
Регистрация: 13.04.2011
Сообщений: 25

Стирается массив при выходе из each
Всем приветы! Прошу помочь ...
<?xml version="1.0" encoding="utf-8"?>
<root date="28.08.12">
  <mdata date="29.08.12">
    <bye>
      <b1>1.10</b1>
      <b2>1.20</b2>
      <b3>1.30</b3>
      <b4>1.40</b4>
      <b5>1.55</b5>
    </bye>
    <sell>
      <s1>0.00</s1>
      <s2>0.00</s2>
      <s3>0.00</s3>
      <s4>0.00</s4>
      <s5>0.00</s5>
    </sell>
  </mdata>
  <mdata date="30.08.12">
    <bye> ...

function getRate( ratedate, bs )
{
	var i, vname, sss;
	var rates = new Array();

	var md = $("mdata", xml);

	$.each(md, function() {
		var m_date = jQuery( this ).attr( 'date' );
		if ( m_date == ratedate )
		{
			for ( i = 1; i < 6; i++ )
			{
				vname = bs + i;
				rates[vname] = jQuery( this ).find( vname ).text();
				sss += jQuery( this ).find( vname ).text() + ' + ';
			}
			return false;
		}
	});

	alert('ratesAll: ' + rates);
	alert('sss: ' + sss);
	return rates;
}

Вызываю, к примеру так:
getRate( '29.08.12', 'b' );

На выходе из each массив rates оказывается пустой - alert('ratesAll: ' + rates) выводит пустоту! Переменная же sss - нормально сохраняет значение.
Внутри each массив rates нормально заполняется.
В чем ошибка? Бьюсь уже несколько часов - ничего не получается
Спасибо всем кто откликнется
Ответить с цитированием