Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #11 (permalink)  
Старый 13.08.2011, 11:05
Профессор
Отправить личное сообщение для sergiocharm Посмотреть профиль Найти все сообщения от sergiocharm
 
Регистрация: 12.08.2011
Сообщений: 176

разобрался!
Ответить с цитированием
  #12 (permalink)  
Старый 13.08.2011, 11:13
Профессор
Отправить личное сообщение для sergiocharm Посмотреть профиль Найти все сообщения от sergiocharm
 
Регистрация: 12.08.2011
Сообщений: 176

Ребят, вопрос такой:
Как суммировать данные?
к примеру пользователь ввел 10м в 26 диаметре и 32 диаметре -20метров... http://www.allremont59.ru/obem-vodyi...oprovodah.html
Хочется чтобы под таблицей автоматом выводилась итоговая сумма литров (под каждой таблицей отдельно)

спасибо!
Ответить с цитированием
  #13 (permalink)  
Старый 13.08.2011, 11:24
sinistral
Посмотреть профиль Найти все сообщения от melky
 
Регистрация: 28.03.2011
Сообщений: 5,418

Сообщение от sergiocharm Посмотреть сообщение
Ребят, вопрос такой:
Как суммировать данные?
к примеру пользователь ввел 10м в 26 диаметре и 32 диаметре -20метров... http://www.allremont59.ru/obem-vodyi...oprovodah.html
Хочется чтобы под таблицей автоматом выводилась итоговая сумма литров (под каждой таблицей отдельно)

спасибо!
пройтись по всем полям и назначить обработчики onchange. потом делай с числами, что хочешь

селектор примерно такой (jq)

$("table.forms input[name ^= 'input'");
Ответить с цитированием
  #14 (permalink)  
Старый 14.08.2011, 13:22
Профессор
Отправить личное сообщение для sergiocharm Посмотреть профиль Найти все сообщения от sergiocharm
 
Регистрация: 12.08.2011
Сообщений: 176

Цитата:
Хочется чтобы под таблицей автоматом выводилась итоговая сумма литров (под каждой таблицей отдельно)
вопрос остается открытым
Ответить с цитированием
  #15 (permalink)  
Старый 15.08.2011, 00:15
sinistral
Посмотреть профиль Найти все сообщения от melky
 
Регистрация: 28.03.2011
Сообщений: 5,418

скрипт что ли написать не можете?
Ответить с цитированием
  #16 (permalink)  
Старый 15.08.2011, 00:36
Профессор
Отправить личное сообщение для sergiocharm Посмотреть профиль Найти все сообщения от sergiocharm
 
Регистрация: 12.08.2011
Сообщений: 176

Ну вот есть
<script type="text/javascript">
  function addIt( type ) {
    var data = {
      A: 0.115,
      B: 0.200,
      C: 0.315,
      D: 0.530,
  F:0.140,
  G:0.216, 
  H:0.352,
  J:0.555, 
      K: 0.176,
      L: 0.315,
      M: 0.490,
      N: 0.805,
  O:1.260,
  P:1.960, 
  R:3.7,
  S:5.3, 
  T:8  }
    var value = parseFloat(document.getElementById("input" + type).value.replace(/,/, '.')) || 0;
    document.getElementById("output" + type).value = parseFloat(value * data[ type ]).toFixed(2);
  }
</script>


при расчете формы хотелось бы чтобы в конце таблицы (персонально) выводилась сумма. Я читал про чейнж, но там везде про выбор говорится, а вот как сделать чтобы суммировались вычисления не знаю


вот таблица
<span style="text-decoration: underline;">Трубопровод металлопластиковый</span>
<table class="forms">
<tr>
<td align="center" width="250"><strong>Диаметр трубопровода</strong></td>
<td align="center" width="100"><strong>Метраж (м.)</strong></td>
<td align="center" width="100"><strong>Объем (л.)</strong></td>
</tr>
<td align="center"><strong>16</strong></td>
<td align="center"><input type="text" name="inputA" id="inputA" value="0" size="10" onKeyUp="addIt('A');"/></td>
<td align="center"><input type="text" name="outputA" id="outputA" size="8" /></td>
</tr>
<tr>
<td align="center"><strong>20</strong></td>
<td align="center"><input type="text" name="inputB" id="inputB" value="0" size="10" onKeyUp="addIt('B');"/></td>
<td align="center"><input type="text" name="outputB" id="outputB" size="8" /></td>
</tr>
<tr>
<td align="center"><strong>26</strong></td>
<td align="center"><input type="text" name="inputC" id="inputC" value="0" size="10" onKeyUp="addIt('C');"/></td>
<td align="center"><input type="text" name="outputC" id="outputC" size="8" /></td>
</tr>
<tr>
<td align="center"><strong>32</strong></td>
<td align="center"><input type="text" name="inputD" id="inputD" value="0" size="10" onKeyUp="addIt('D');"/></td>
<td align="center"><input type="text" name="outputD" id="outputD" size="8" /></td>
</tr>
</table>

<span style="text-decoration: underline;">Трубопровод Полипропиленовый PN 20</span>
<table class="forms">
<tr>
<td align="center" width="250"><strong>Диаметр трубопровода</strong></td>
<td align="center" width="100"><strong>Метраж (м.)</strong></td>
<td align="center" width="100"><strong>Объем (л.)</strong></td>
</tr>
<td align="center"><strong>16</strong></td>
<td align="center"><input type="text" name="inputF" id="inputF" value="0" size="10" onKeyUp="addIt('F');"/></td>
<td align="center"><input type="text" name="outputF" id="outputF" size="8" /></td>
</tr>
<tr>
<td align="center"><strong>20</strong></td>
<td align="center"><input type="text" name="inputG" id="inputG" value="0" size="10" onKeyUp="addIt('G');"/></td>
<td align="center"><input type="text" name="outputG" id="outputG" size="8" /></td>
</tr>
<tr>
<td align="center"><strong>26</strong></td>
<td align="center"><input type="text" name="inputH" id="inputH" value="0" size="10" onKeyUp="addIt('H');"/></td>
<td align="center"><input type="text" name="outputH" id="outputH" size="8" /></td>
</tr>
<tr>
<td align="center"><strong>32</strong></td>
<td align="center"><input type="text" name="inputJ" id="inputJ" value="0" size="10" onKeyUp="addIt('J');"/></td>
<td align="center"><input type="text" name="outputJ" id="outputJ" size="8" /></td>
</tr>
</table>

<span style="text-decoration: underline;">Трубопровод стальной ВГП</span>
<table class="forms">
<tr>
<td align="center" width="250"><strong>Диаметр трубопровода (Ду)</strong></td>
<td align="center" width="100"><strong>Метраж (м.)</strong></td>
<td align="center" width="100"><strong>Объем (л.)</strong></td>
</tr>
<td align="center"><strong>15*2,8мм</strong></td>
<td align="center"><input type="text" name="inputK" id="inputK" value="0" size="10" onKeyUp="addIt('K');"/></td>
<td align="center"><input type="text" name="outputK" id="outputK" size="8" /></td>
</tr>
<tr>
<td align="center"><strong>20*2,8мм</strong></td>
<td align="center"><input type="text" name="inputL" id="inputL" value="0" size="10" onKeyUp="addIt('L');"/></td>
<td align="center"><input type="text" name="outputL" id="outputL" size="8" /></td>
</tr>
<tr>
<td align="center"><strong>25*3,2мм</strong></td>
<td align="center"><input type="text" name="inputM" id="inputM" value="0" size="10" onKeyUp="addIt('M');"/></td>
<td align="center"><input type="text" name="outputM" id="outputM" size="8" /></td>
</tr>
<tr>
<td align="center"><strong>32*3,2мм</strong></td>
<td align="center"><input type="text" name="inputN" id="inputN" value="0" size="10" onKeyUp="addIt('N');"/></td>
<td align="center"><input type="text" name="outputN" id="outputN" size="8" /></td>
</tr>
<tr>
<td align="center"><strong>40*3,5мм</strong></td>
<td align="center"><input type="text" name="inputO" id="inputO" value="0" size="10" onKeyUp="addIt('O');"/></td>
<td align="center"><input type="text" name="outputO" id="outputO" size="8" /></td>
</tr>
<tr>
<td align="center"><strong>50*3,5мм</strong></td>
<td align="center"><input type="text" name="inputP" id="inputP" value="0" size="10" onKeyUp="addIt('P');"/></td>
<td align="center"><input type="text" name="outputP" id="outputP" size="8" /></td>
</tr>
<tr>
<td align="center"><strong>76*3,5мм</strong></td>
<td align="center"><input type="text" name="inputR" id="inputR" value="0" size="10" onKeyUp="addIt('R');"/></td>
<td align="center"><input type="text" name="outputR" id="outputR" size="8" /></td>
</tr>
<tr>
<td align="center"><strong>89*3,5мм</strong></td>
<td align="center"><input type="text" name="inputS" id="inputS" value="0" size="10" onKeyUp="addIt('S');"/></td>
<td align="center"><input type="text" name="outputS" id="outputS" size="8" /></td>
</tr>
<tr>
<td align="center"><strong>108*4мм</strong></td>
<td align="center"><input type="text" name="inputT" id="inputT" value="0" size="10" onKeyUp="addIt('T');"/></td>
<td align="center"><input type="text" name="outputT" id="outputT" size="8" /></td>
</tr>
</table>
Ответить с цитированием
  #17 (permalink)  
Старый 15.08.2011, 11:34
что-то знаю
Отправить личное сообщение для devote Посмотреть профиль Найти все сообщения от devote
 
Регистрация: 24.05.2009
Сообщений: 5,176

function addIt( type ) {
    var data = {
      A: 0.115,
      B: 0.200,
      C: 0.315,
      D: 0.530,
  F:0.140,
  G:0.216, 
  H:0.352,
  J:0.555, 
      K: 0.176,
      L: 0.315,
      M: 0.490,
      N: 0.805,
  O:1.260,
  P:1.960, 
  R:3.7,
  S:5.3, 
  T:8  }
    var value = parseFloat(document.getElementById("input" + type).value.replace(/,/, '.')) || 0;
    document.getElementById("output" + type).value = parseFloat(value * data[ type ]).toFixed(2);

    var total = 0;
    for(var key in data) {
        total += parseFloat(document.getElementById("input" + key).value.replace(/,/, '.')) || 0;
    }
    document.getElementById("total_box").value = total;
  }
Ответить с цитированием
  #18 (permalink)  
Старый 15.08.2011, 15:34
Профессор
Отправить личное сообщение для sergiocharm Посмотреть профиль Найти все сообщения от sergiocharm
 
Регистрация: 12.08.2011
Сообщений: 176

эмммм... а как в тело вставить?
Ответить с цитированием
  #19 (permalink)  
Старый 15.08.2011, 20:32
Профессор
Отправить личное сообщение для sergiocharm Посмотреть профиль Найти все сообщения от sergiocharm
 
Регистрация: 12.08.2011
Сообщений: 176

Пока не забанили... благодарю за помощь: devote, devote и ещё раз devote, а так же melky, ну и тех кто пытался помочь...
Ответить с цитированием
  #20 (permalink)  
Старый 15.08.2011, 22:08
что-то знаю
Отправить личное сообщение для devote Посмотреть профиль Найти все сообщения от devote
 
Регистрация: 24.05.2009
Сообщений: 5,176

Сообщение от sergiocharm
Пока не забанили...
а что должны?
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как заставить функцию при запуске увидеть ГЛОБАЛЬНУЮ переменную? возжаждавший Элементы интерфейса 8 23.02.2017 01:27
Как узнать, присутствует ли в окне полоса прокрутки или нет? возжаждавший Элементы интерфейса 6 12.03.2010 23:00
Как сделать электронный каталог продукции? natarius Серверные языки и технологии 6 24.05.2009 20:56
Как заставить this в обработчике события указывать на объект? Dmitryk Events/DOM/Window 3 16.03.2009 08:45
Как заставить работать оперу и мозилу? SDone AJAX и COMET 6 25.02.2009 16:05