Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 15.07.2013, 07:10
Новичок на форуме
Отправить личное сообщение для bshp Посмотреть профиль Найти все сообщения от bshp
 
Регистрация: 15.07.2013
Сообщений: 9

парсинг из xml
задание - написать конвертер валют. нашёл xml от госбанка с курсом. проблема в том что не знаю как связать документы таким образом чтобы функция получала курс из xml.

<!-- vhod -->
<SCRIPT LANGUAGE="JavaScript">

function roundToPennies(n)
{
   pennies = n * 100;
 
   pennies = Math.round(pennies);
 
   strPennies = "" + pennies;
   len = strPennies.length;
 
   first = strPennies.substring(0, len - 2) + ".";
   last = strPennies.substring(len - 2, len);
 
   if(first == ".")
   {
      first = "0."
   }
 
   if(last.length == 1)
   {
      last += "0";
   }
   return first + last;
}
//LEI
function ComputeMDL()
{
   MDL_countValue = document.forms['MoneyForm'].elements['MDL_box'].value;
   
   curs_USDValue = document.forms['MoneyForm'].elements['USD_curs'].value;
   
   curs_EURValue = document.forms['MoneyForm'].elements['EUR_curs'].value;
     
 
   {
      Money = eval(MDL_countValue);
 
      {
         cU = eval(curs_USDValue);
         cE = eval(curs_EURValue);
		 
		 count_USD = Money / cU;
		 count_EUR = Money / cE;

 
         document.forms['0'].elements['USD_box'].value = roundToPennies(count_USD);
		 document.forms['0'].elements['EUR_box'].value = roundToPennies(count_EUR);
     }
   }
}

//DOLLAR
function ComputeUSD()//-->
{
   USD_countValue = document.forms['MoneyForm'].elements['USD_box'].value;
   
   
   
   curs_USDValue = document.forms['MoneyForm'].elements['USD_curs1'].value;
   
   curs_EURValue = document.forms['MoneyForm'].elements['EUR_curs1'].value;
     
 
   {
      Money = eval(USD_countValue);
 
      {
         cD = eval(curs_USDValue);
         cE = eval(curs_EURValue);
		 
		 count_MDL = Money * cD;
		 count_EUR = count_MDL / cE;

 
         document.forms['0'].elements['MDL_box'].value = roundToPennies(count_MDL);
		 document.forms['0'].elements['EUR_box'].value = roundToPennies(count_EUR);
     }
   }
}

//EURO
function ComputeEUR()//-->
{
   EUR_countValue = document.forms['MoneyForm'].elements['EUR_box'].value;  
   curs_USDValue = document.forms['MoneyForm'].elements['USD_curs2'].value;
   curs_EURValue = document.forms['MoneyForm'].elements['EUR_curs2'].value;
     
 
   {
      Money = eval(EUR_countValue);
 
      {
         cD = eval(curs_USDValue);
         cE = eval(curs_EURValue);
		 
		 count_MDL = Money * cE;
		 count_USD = count_MDL / cD;

 
         document.forms['0'].elements['MDL_box'].value = roundToPennies(count_MDL);
		 document.forms['0'].elements['USD_box'].value = roundToPennies(count_USD);
     }
   }
}

function clean_fields()//-->
{
		 document.forms['0'].elements['MDL_box'].value = '';
		 document.forms['0'].elements['USD_box'].value = '';
		 document.forms['0'].elements['EUR_box'].value = '';
 }

// -->
</SCRIPT>

<CENTER>
<H1>&nbsp;</H1>
<H1>&nbsp;</H1>
<FORM NAME="MoneyForm">
  <p>&nbsp;</p>
  <h1>Convertor valutar</h1>
  <table width="270" height="158" border="0">
    <tr>
      <td width="33%" height="62"><div align="center"><img src="flaags/flag_md_big.gif" width="103" height="58" /></div></td>
      <td width="67%"><input name="MDL_box" type="text" onClick="clean_fields()" onKeyUp="ComputeMDL()" size="20" />
        <input type="hidden" name="EUR_curs" value="16.50" />
        <input type="hidden" name="USD_curs" value="12.40" /></td>
      </tr>
    <tr>
	
      <td height="62"><div align="center"><img src="flaags/us-lgflag.gif" width="103" height="58" /></div></td>
      <td><input type="Text" name="USD_box" size="20"  onkeyup="ComputeUSD()" onClick="clean_fields()" />
	    <input type="hidden" name="EUR_curs1" value="16.50" />
        <input type="hidden" name="USD_curs1" value="12.40" />      </td>
      </tr>
    <tr>
      <td height="60"><div align="center"><img src="flaags/EU.jpg" width="103" height="58" /></div></td>
      <td><input type="text" name="EUR_box" size="20"  onKeyUp="ComputeEUR()" onClick="clean_fields()" />
        <input type="hidden" name="EUR_curs2" value="16.50" />
        <input type="hidden" name="USD_curs2" value="12.40" /></td>
      </tr>
  </table>

</FORM>
</CENTER>
Ответить с цитированием
  #2 (permalink)  
Старый 15.07.2013, 07:10
Новичок на форуме
Отправить личное сообщение для bshp Посмотреть профиль Найти все сообщения от bshp
 
Регистрация: 15.07.2013
Сообщений: 9

и собственно xml
This XML file does not appear to have any style information associated with it. The document tree is shown below.
<ValCurs Date="15.07.2013" name="Ratele oficiale de schimb">
<Valute ID="47">
<NumCode>978</NumCode>
<CharCode>EUR</CharCode>
<Nominal>1</Nominal>
<Name>Euro</Name>
<Value>16.4864</Value>
</Valute>
<Valute ID="44">
<NumCode>840</NumCode>
<CharCode>USD</CharCode>
<Nominal>1</Nominal>
<Name>Dolar S.U.A.</Name>
<Value>12.6396</Value>
</Valute>
<Valute ID="36">
<NumCode>643</NumCode>
<CharCode>RUB</CharCode>
<Nominal>1</Nominal>
<Name>Rubla rusa</Name>
<Value>0.3860</Value>
</Valute>
<Valute ID="35">
<NumCode>946</NumCode>
<CharCode>RON</CharCode>
<Nominal>1</Nominal>
<Name>Leu romanesc</Name>
<Value>3.7297</Value>
</Valute>
<Valute ID="43">
<NumCode>980</NumCode>
<CharCode>UAH</CharCode>
<Nominal>1</Nominal>
<Name>Hrivna ucraineana</Name>
<Value>1.5501</Value>
</Valute>
<Valute ID="61">
<NumCode>784</NumCode>
<CharCode>AED</CharCode>
<Nominal>1</Nominal>
<Name>Dirham E.A.U.</Name>
<Value>3.4412</Value>
</Valute>
<Valute ID="64">
<NumCode>008</NumCode>
<CharCode>ALL</CharCode>
<Nominal>10</Nominal>
<Name>Lek albanez</Name>
<Value>1.1745</Value>
</Valute>
<Valute ID="1">
<NumCode>051</NumCode>
<CharCode>AMD</CharCode>
<Nominal>10</Nominal>
<Name>Dram armenesc</Name>
<Value>0.3084</Value>
</Valute>
<Valute ID="3">
<NumCode>036</NumCode>
<CharCode>AUD</CharCode>
<Nominal>1</Nominal>
<Name>Dolar australian</Name>
<Value>11.4585</Value>
</Valute>
<Valute ID="4">
<NumCode>944</NumCode>
<CharCode>AZN</CharCode>
<Nominal>1</Nominal>
<Name>Manat azer</Name>
<Value>16.1230</Value>
</Valute>
<Valute ID="6">
<NumCode>975</NumCode>
<CharCode>BGN</CharCode>
<Nominal>1</Nominal>
<Name>Leva bulgara</Name>
<Value>8.4292</Value>
</Valute>
<Valute ID="50">
<NumCode>974</NumCode>
<CharCode>BYR</CharCode>
<Nominal>100</Nominal>
<Name>Rubla bielorusa</Name>
<Value>0.1427</Value>
</Valute>
<Valute ID="8">
<NumCode>124</NumCode>
<CharCode>CAD</CharCode>
<Nominal>1</Nominal>
<Name>Dolar canadian</Name>
<Value>12.1763</Value>
</Valute>
<Valute ID="9">
<NumCode>756</NumCode>
<CharCode>CHF</CharCode>
<Nominal>1</Nominal>
<Name>Franc elvetian</Name>
<Value>13.3069</Value>
</Valute>
<Valute ID="54">
<NumCode>156</NumCode>
<CharCode>CNY</CharCode>
<Nominal>1</Nominal>
<Name>Yuan Renminbi chinezesc</Name>
<Value>2.0592</Value>
</Valute>
<Valute ID="10">
<NumCode>203</NumCode>
<CharCode>CZK</CharCode>
<Nominal>1</Nominal>
<Name>Coroana ceha</Name>
<Value>0.6346</Value>
</Valute>
<Valute ID="12">
<NumCode>208</NumCode>
<CharCode>DKK</CharCode>
<Nominal>1</Nominal>
<Name>Coroana daneza</Name>
<Value>2.2105</Value>
</Valute>
<Valute ID="17">
<NumCode>826</NumCode>
<CharCode>GBP</CharCode>
<Nominal>1</Nominal>
<Name>Lira sterlina</Name>
<Value>19.0965</Value>
</Valute>
<Valute ID="18">
<NumCode>981</NumCode>
<CharCode>GEL</CharCode>
<Nominal>1</Nominal>
<Name>Lari georgian</Name>
<Value>7.6234</Value>
</Valute>
<Valute ID="63">
<NumCode>344</NumCode>
<CharCode>HKD</CharCode>
<Nominal>1</Nominal>
<Name>Dolar Hong Kong</Name>
<Value>1.6293</Value>
</Valute>
<Valute ID="20">
<NumCode>191</NumCode>
<CharCode>HRK</CharCode>
<Nominal>1</Nominal>
<Name>Kuna croata</Name>
<Value>2.1880</Value>
</Valute>
<Valute ID="21">
<NumCode>348</NumCode>
<CharCode>HUF</CharCode>
<Nominal>100</Nominal>
<Name>Forint ungar</Name>
<Value>5.6373</Value>
</Valute>
<Valute ID="49">
<NumCode>376</NumCode>
<CharCode>ILS</CharCode>
<Nominal>1</Nominal>
<Name>Shekel israelian</Name>
<Value>3.5094</Value>
</Valute>
<Valute ID="65">
<NumCode>356</NumCode>
<CharCode>INR</CharCode>
<Nominal>10</Nominal>
<Name>Rupia indiana</Name>
<Value>2.1095</Value>
</Valute>
<Valute ID="23">
<NumCode>352</NumCode>
<CharCode>ISK</CharCode>
<Nominal>10</Nominal>
<Name>Coroana islandeza</Name>
<Value>1.0271</Value>
</Valute>
<Valute ID="25">
<NumCode>392</NumCode>
<CharCode>JPY</CharCode>
<Nominal>100</Nominal>
<Name>Yen japonez</Name>
<Value>12.7140</Value>
</Valute>
<Valute ID="26">
<NumCode>417</NumCode>
<CharCode>KGS</CharCode>
<Nominal>10</Nominal>
<Name>Som kirghiz</Name>
<Value>2.5872</Value>
</Valute>
<Valute ID="66">
<NumCode>410</NumCode>
<CharCode>KRW</CharCode>
<Nominal>100</Nominal>
<Name>Won sud-coreean</Name>
<Value>1.1240</Value>
</Valute>
<Valute ID="59">
<NumCode>414</NumCode>
<CharCode>KWD</CharCode>
<Nominal>1</Nominal>
<Name>Dinar kuweitian</Name>
<Value>44.2145</Value>
</Valute>
<Valute ID="27">
<NumCode>398</NumCode>
<CharCode>KZT</CharCode>
<Nominal>10</Nominal>
<Name>Tenghe kazah</Name>
<Value>0.8285</Value>
</Valute>
<Valute ID="28">
<NumCode>440</NumCode>
<CharCode>LTL</CharCode>
<Nominal>1</Nominal>
<Name>Lit lituanian</Name>
<Value>4.7747</Value>
</Valute>
<Valute ID="29">
<NumCode>428</NumCode>
<CharCode>LVL</CharCode>
<Nominal>1</Nominal>
<Name>Lat leton</Name>
<Value>23.4632</Value>
</Valute>
<Valute ID="62">
<NumCode>807</NumCode>
<CharCode>MKD</CharCode>
<Nominal>10</Nominal>
<Name>Denar macedonian</Name>
<Value>2.6734</Value>
</Valute>
<Valute ID="56">
<NumCode>458</NumCode>
<CharCode>MYR</CharCode>
<Nominal>1</Nominal>
<Name>Ringgit malayezian</Name>
<Value>3.9778</Value>
</Valute>
<Valute ID="32">
<NumCode>578</NumCode>
<CharCode>NOK</CharCode>
<Nominal>1</Nominal>
<Name>Coroana norvegiana</Name>
<Value>2.0871</Value>
</Valute>
<Valute ID="53">
<NumCode>554</NumCode>
<CharCode>NZD</CharCode>
<Nominal>1</Nominal>
<Name>Dolar neozeelandez</Name>
<Value>9.8721</Value>
</Valute>
<Valute ID="33">
<NumCode>985</NumCode>
<CharCode>PLN</CharCode>
<Nominal>1</Nominal>
<Name>Zlot polonez</Name>
<Value>3.8111</Value>
</Valute>
<Valute ID="48">
<NumCode>941</NumCode>
<CharCode>RSD</CharCode>
<Nominal>100</Nominal>
<Name>Dinar sirb</Name>
<Value>14.4875</Value>
</Valute>
<Valute ID="37">
<NumCode>752</NumCode>
<CharCode>SEK</CharCode>
<Nominal>1</Nominal>
<Name>Coroana suedeza</Name>
<Value>1.8943</Value>
</Valute>
<Valute ID="51">
<NumCode>972</NumCode>
<CharCode>TJS</CharCode>
<Nominal>1</Nominal>
<Name>Somoni tadjic</Name>
<Value>2.6514</Value>
</Valute>
<Valute ID="60">
<NumCode>934</NumCode>
<CharCode>TMT</CharCode>
<Nominal>1</Nominal>
<Name>Manat turkmen</Name>
<Value>4.4349</Value>
</Valute>
<Valute ID="42">
<NumCode>949</NumCode>
<CharCode>TRY</CharCode>
<Nominal>1</Nominal>
<Name>Lira turceasca</Name>
<Value>6.4443</Value>
</Valute>
<Valute ID="45">
<NumCode>860</NumCode>
<CharCode>UZS</CharCode>
<Nominal>100</Nominal>
<Name>Sum uzbek</Name>
<Value>0.6023</Value>
</Valute>
<Valute ID="46">
<NumCode>960</NumCode>
<CharCode>XDR</CharCode>
<Nominal>1</Nominal>
<Name>D.S.T.</Name>
<Value>18.9748</Value>
</Valute>
</ValCurs>
Ответить с цитированием
  #3 (permalink)  
Старый 15.07.2013, 07:13
Новичок на форуме
Отправить личное сообщение для bshp Посмотреть профиль Найти все сообщения от bshp
 
Регистрация: 15.07.2013
Сообщений: 9

приведите пожалуйста пример считывания любого курса из xml
Ответить с цитированием
  #4 (permalink)  
Старый 15.07.2013, 07:56
Аватар для ОлегА
Профессор
Отправить личное сообщение для ОлегА Посмотреть профиль Найти все сообщения от ОлегА
 
Регистрация: 25.08.2011
Сообщений: 420

это пример с jquery
var xml = $.parseXML( ваш XML );

name_val = $(xml).find('#47').find('Name').text()
kurs_val   = $(xml).find('#47').find('Value').text()

alert(name_val + ' - ' + kurs_val)
Ответить с цитированием
  #5 (permalink)  
Старый 15.07.2013, 16:07
Новичок на форуме
Отправить личное сообщение для bshp Посмотреть профиль Найти все сообщения от bshp
 
Регистрация: 15.07.2013
Сообщений: 9

спасибо большое!
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Парсинг из xml Vasy Общие вопросы Javascript 19 13.03.2013 17:15
парсинг xml с сайта используя js teanrus Общие вопросы Javascript 5 18.12.2012 13:36
парсинг XML с параметрами javaScript-ом Sveta AJAX и COMET 5 22.10.2012 11:20
Парсинг XML в IE eternal AJAX и COMET 1 20.11.2011 01:25
не работает парсинг XML в IE Enxiro jQuery 6 25.08.2010 12:26