Как заставить итоговую цифру...
Как заставить итоговую цифру округляться до сотых?
<script type="text/javascript"> <!-- function addIt() { a=0.115; var value1 = parseFloat(document.getElementById("inputA").value .replace(/,/, '.')) || 0; // <--- // <--- document.getElementById("output").value = value1*a; } // --> </script> <h4>Объем воды в различных трубопроводах</h4> Трубопровод металлопластиковый <table border="1" class="forms"> <tr> <td><strong>Диаметр трубопровода</strong></td> <td><strong>Метраж (м.)</strong></td> <td><strong>Объем (л.)</strong></td> </tr> <td><strong>16</strong></td> <td> <input type="text" name="inputA" id="inputA" value="0" size="10" onKeyUp="addIt();"/> </td> <td> <input type="text" name="output" id="output" size="8" /> </td> </tr> </table> |
блин, может уже научимся код в специальные теги обрамлять... в этой каше честно говоря сложно разобраться.
|
document.getElementById("output").value = parseFloat(value1*a).toFixed(2); |
ещё вопрос, в данной таблице одна строка расчитывает диаметр 16, но у меня ещё и другие диаметры будут (20,26,32), как должна выглядеть функция?... у меня сейчас создано несколько диаметров, но считает он почему то в последнюю ячейку
|
Так что же я делаю не так?
для каждой строки отдельную функцию что ли писать? Подскажите плиз function addIt() { a=0.115; b=0.200; c=0.315; d=0.530; var value1 = parseFloat(document.getElementById("inputA").value.replace(/,/, '.')) || 0; // <--- // <--- document.getElementById("outputA").value = value1*a; document.getElementById("outputA").value = parseFloat(value1*a).toFixed(2); document.getElementById("outputB").value = value1*b; document.getElementById("outputB").value = parseFloat(value1*b).toFixed(2); document.getElementById("outputC").value = value1*c; document.getElementById("outputC").value = parseFloat(value1*c).toFixed(2); document.getElementById("outputD").value = value1*d; document.getElementById("outputD").value = parseFloat(value1*d).toFixed(2); } // --> <h4>Объем воды в различных трубопроводах</h4> Трубопровод металлопластиковый <table border="1" class="forms"> <tr> <td><strong>Диаметр трубопровода</strong></td> <td><strong>Метраж (м.)</strong></td> <td><strong>Объем (л.)</strong></td> </tr> <td><strong>16</strong></td> <td> <input type="text" name="inputA" id="inputA" value="0" size="10" onKeyUp="addIt(1);"/> </td> <td> <input type="text" name="outputA" id="outputA" size="8" /> </td> </tr> <tr> <td><strong>20</strong></td> <td> <input type="text" name="inputB" id="inputB" value="0" size="10" onKeyUp="addIt(2);"/> </td> <td> <input type="text" name="outputB" id="outputB" size="8" /> </td> </tr> <tr> <td><strong>26</strong></td> <td> <input type="text" name="inputC" id="inputC" value="0" size="10" onKeyUp="addIt();"/> </td> <td> <input type="text" name="outputC" id="outputC" size="8" /> </td> </tr> <tr> <td><strong>32</strong></td> <td> <input type="text" name="inputD" id="inputD" value="0" size="10" onKeyUp="addIt();"/> </td> <td> <input type="text" name="outputD" id="outputD" size="8" /> </td> </tr> </table> |
нашел решение... Проблема только в том что при вводе в любую строку кол-во метров высчитывает правильно но появляются ранее отсутствующие нули, как бы не эстетично смотрится, как сделать так чтобы нули в других ячейках не появлялись?
<!-- function addIt() { a=0.115; b=0.200; c=0.315; d=0.530; var value1 = parseFloat(document.getElementById("inputA").value.replace(/,/, '.')) || 0; var value2 = parseFloat(document.getElementById("inputB").value.replace(/,/, '.')) || 0; var value3 = parseFloat(document.getElementById("inputC").value.replace(/,/, '.')) || 0; var value4 = parseFloat(document.getElementById("inputD").value.replace(/,/, '.')) || 0; // <--- // <--- document.getElementById("outputA").value = value1*a; document.getElementById("outputA").value = parseFloat(value1*a).toFixed(2); document.getElementById("outputB").value = value2*b; document.getElementById("outputB").value = parseFloat(value2*b).toFixed(2); document.getElementById("outputC").value = value3*c; document.getElementById("outputC").value = parseFloat(value3*c).toFixed(2); document.getElementById("outputD").value = value4*d; document.getElementById("outputD").value = parseFloat(value4*d).toFixed(2); } // --> <h4>Объем воды в различных трубопроводах</h4> Трубопровод металлопластиковый <table border="1" class="forms"> <tr> <td><strong>Диаметр трубопровода</strong></td> <td><strong>Метраж (м.)</strong></td> <td><strong>Объем (л.)</strong></td> </tr> <td><strong>16</strong></td> <td> <input type="text" name="inputA" id="inputA" value="0" size="10" onKeyUp="addIt();"/> </td> <td> <input type="text" name="outputA" id="outputA" size="8" /> </td> </tr> <tr> <td><strong>20</strong></td> <td> <input type="text" name="inputB" id="inputB" value="0" size="10" onKeyUp="addIt();"/> </td> <td> <input type="text" name="outputB" id="outputB" size="8" /> </td> </tr> <tr> <td><strong>26</strong></td> <td> <input type="text" name="inputC" id="inputC" value="0" size="10" onKeyUp="addIt();"/> </td> <td> <input type="text" name="outputC" id="outputC" size="8" /> </td> </tr> <tr> <td><strong>32</strong></td> <td> <input type="text" name="inputD" id="inputD" value="0" size="10" onKeyUp="addIt();"/> </td> <td> <input type="text" name="outputD" id="outputD" size="8" /> </td> </tr> </table> |
доброе утро всем....
подскажите как от нулей избавиться (при расчете в одной строке в другие ячейки автоматом нули проставляются) в вышеуказанном коде |
<script type="text/javascript"> function addIt( type ) { var data = { A: 0.115, B: 0.200, C: 0.315, D: 0.530 } var value = parseFloat(document.getElementById("input" + type).value.replace(/,/, '.')) || 0; document.getElementById("output" + type).value = parseFloat(value * data[ type ]).toFixed(2); } </script> <h4>Объем воды в различных трубопроводах</h4> Трубопровод металлопластиковый <table border="1" class="forms"> <tr> <td><strong>Диаметр трубопровода</strong></td> <td><strong>Метраж (м.)</strong></td> <td><strong>Объем (л.)</strong></td> </tr> <td><strong>16</strong></td> <td> <input type="text" name="inputA" id="inputA" value="0" size="10" onKeyUp="addIt('A');"/> </td> <td> <input type="text" name="outputA" id="outputA" size="8" /> </td> </tr> <tr> <td><strong>20</strong></td> <td> <input type="text" name="inputB" id="inputB" value="0" size="10" onKeyUp="addIt('B');"/> </td> <td> <input type="text" name="outputB" id="outputB" size="8" /> </td> </tr> <tr> <td><strong>26</strong></td> <td> <input type="text" name="inputC" id="inputC" value="0" size="10" onKeyUp="addIt('C');"/> </td> <td> <input type="text" name="outputC" id="outputC" size="8" /> </td> </tr> <tr> <td><strong>32</strong></td> <td> <input type="text" name="inputD" id="inputD" value="0" size="10" onKeyUp="addIt('D');"/> </td> <td> <input type="text" name="outputD" id="outputD" size="8" /> </td> </tr> </table> |
вставляю всё что у вас написано на страницу, почему то не считает :nono: хотя в вашем примере все считает.. непонятно
|
какой то конфликт с Wordpress. Я скрипт и код вставляю во вкладку HTML, может здесь что то не так делаю?
|
Часовой пояс GMT +3, время: 05:16. |