Javascript.RU

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

Помогите доделать калькулятор !!! help
Есть код калькулятора btc/usd, eth/usd итд, нужно добавить функцию подсчета при выборе EUR, GBP из селекта D2



<script language="JavaScript">

var nOutsPer1Inc = 6600/1.000; /*RATE*/

function Incsel(obj) /*select  name="D1" RATE*/

	      {
  nOutsPer1Inc = {1 : 6600/1 ,2: 233/1,3: 667/1,4: 277/1}[obj.value]
	      
	         //alert(nOutsPer1Inc)

  
   if (document.all.am == null)
        return;

    var incSum = document.all.am.value.replace(",",".");
    if (isNaN(incSum))
        incSum = "0";

    incSum = Math.round(incSum * nIncPower) / nIncPower;

    var v = Math.floor((incSum * nOutsPer1Inc - nOutAddon) * nOutPower +
        1.1 / nOutPower) / nOutPower;
    if (v < 0)
        v = 0;
    document.all.TbOutSum.value = v;
   



	      }




var nIncPower = Math.pow(10,4);
var nOutPower = Math.pow(10,2);
var nOutAddon = 0.00;  /*FEES*/


function Inc2Out(bForce)
{
    if (document.all.am == null)
        return;

    var incSum = document.all.am.value.replace(",",".");
    if (isNaN(incSum))
        incSum = "0";

    incSum = Math.round(incSum * nIncPower) / nIncPower;

    var v = Math.floor((incSum * nOutsPer1Inc - nOutAddon) * nOutPower +
        0.1 / nOutPower) / nOutPower;
    if (v < 0)
        v = 0;
    document.all.TbOutSum.value = v;

    if (bForce)
        Out2Inc();
}



function Out2Inc(bForce)
{
    if (document.all.TbOutSum == null)
        return;

	var outSum = document.all.TbOutSum.value.replace(",",".");		
    if (isNaN(outSum))
        outSum = "0";

    outSum = Math.round(outSum * nOutPower) / nOutPower;
    document.all.am.value =
        Math.ceil((outSum + nOutAddon) / nOutsPer1Inc * nIncPower -
            0.1 / nIncPower) / nIncPower;

    if (bForce)
        Inc2Out();
}
</script>


<input name="am"  onchange="Inc2Out()" onkeyup="Inc2Out()" placeholder="1"  >



<select  name="D1" onchange="Incsel(this)" onkeyup="Incsel(this)"  onkeydown="Incsel(this)" onclick="Incsel(this)"   >
									
<option selected value="1">BTC</option>
<option value="2">ETH</option>
<option value="3">BCH</option>
<option value="4">LTC</option>
</select>


<input name="TbOutSum" id="TbOutSum" onchange="Out2Inc()" onkeyup="Out2Inc()">


<select name="D2"  >
<option selected value="1">USD</option>
<option  value="2">EUR</option>
<option  value="3">GBP</option>
</select>
Ответить с цитированием
  #2 (permalink)  
Старый 10.10.2018, 07:37
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,068

Сообщение от Jamesx
{1 : 6600/1 ,2: 233/1,3: 667/1,4: 277/1}
такоеже необходимо для eur и gbp
Ответить с цитированием
  #3 (permalink)  
Старый 10.10.2018, 10:11
Новичок на форуме
Отправить личное сообщение для Jamesx Посмотреть профиль Найти все сообщения от Jamesx
 
Регистрация: 10.10.2018
Сообщений: 3

12 Значений селектов
SEL 1 + SEL2 1, SEL 1 + SEL2 2, SEL 1+ SEL3 3
SEL 2 + SEL2 1, SEL 2 + SEL2 2, SEL 2+ SEL3 3
SEL 3 + SEL2 1, SEL 3 + SEL2 2, SEL 3+ SEL3 3
SEL 4 + SEL2 1, SEL 4 + SEL2 2, SEL 4+ SEL3 3

как это написать в функции ?
Ответить с цитированием
  #4 (permalink)  
Старый 10.10.2018, 13:13
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,068

Jamesx,
смотрите пост №2
var USD = {1 : 6600/1 ,2: 233/1,3: 667/1,4: 277/1};
var EUR = {1 : ... ,2: ... ,3: ...,4: ...}; или цена в $ var EUR = 1.33;
var GBP = {1 : ... ,2: ... ,3: ...,4: ...};var GBP = .88;
что удобнее?
Ответить с цитированием
  #5 (permalink)  
Старый 10.10.2018, 14:05
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,068

калькулятор валют
Jamesx,

<!DOCTYPE html>

<html>
<head>
  <title>Untitled</title>
  <meta charset="utf-8">
  <style type="text/css">
  </style>

  <script>
  document.addEventListener('DOMContentLoaded', function() {
 var USD = {1 : 6600/1 ,2: 233/1,3: 667/1,4: 277/1},
     EUR = 1.33,
     GBP = .88,
     rate = { 1 : 1, 2 : EUR, 3 : GBP},
     input = document.querySelector('[name="am"]'),
     out =  document.querySelector('[name="TbOutSum"]'),
     selFrom = document.querySelector('[name="D1"]'),
     selTo = document.querySelector('[name="D2"]'),
     inputToOut = true,
     num = 0;


     function fn()
     {
       if(inputToOut) {
       num = input.value.trim();
       num = num.replace(",",".").replace(/[^\d.]/,"");
       num = +num || 0;
       num *= USD[selFrom.value];
       num *= rate[selTo.value];
       out.value = num.toFixed(2);
       }
       else {
       num = out.value.trim();
       num = num.replace(",",".").replace(/[^\d.]/,"");
       num = +num || 0;
       num /= rate[selTo.value];
       num /= USD[selFrom.value];
       input.value = num.toFixed(2);
       }
     }
      input.addEventListener('input',function() {inputToOut = true; fn()});
      out.addEventListener('input',function() {inputToOut = false; fn()});
      selFrom.addEventListener('change', fn);
      selTo.addEventListener('change', fn);
  });
  </script>
</head>

<body>
<input name="am" placeholder="1"  >
<select  name="D1"    >
<option selected value="1">BTC</option>
<option value="2">ETH</option>
<option value="3">BCH</option>
<option value="4">LTC</option>
</select>
<input name="TbOutSum" id="TbOutSum" >
<select name="D2"  >
<option selected value="1">USD</option>
<option  value="2">EUR</option>
<option  value="3">GBP</option>
</select>
</body>
</html>
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите доделать калькулятор через ajax Музаффар Общие вопросы Javascript 4 20.12.2013 09:42
Помогите доделать калькулятор расчета стоимости. mazaxaka jQuery 2 08.08.2012 16:14
Помогите вытащить отсюда калькулятор sergiocharm Общие вопросы Javascript 8 17.04.2012 22:22
Помогите найти калькулятор на js GennadiyZm Общие вопросы Javascript 1 29.07.2011 16:26
Помогите доделать меню Nikolay63 Элементы интерфейса 11 06.04.2010 15:46