Работа с формами "Как вывести результаты вычислений в строках?"

Тема в разделе "JavaScript", создана пользователем BIZON, 24 окт 2012.

Модераторы: ZiX
  1. BIZON

    BIZON Перезагрузка...

    Moderator
    • Супермодератор
    Регистр.:
    31 окт 2006
    Сообщения:
    562
    Симпатии:
    1.527
    Вопрос пользователя: Bedman

    Дорабатываю калькулятор для сайта. обработка значений реализована на java. Есть много строк со значениями обрабатываемые диапазоном for(i=1;i<20;i++). Сначала рассчитывается значение в каждой строке, потом всё складывается и снизу выводится total. Формулы сделал, всё работает, но как вывести результаты вычислений в строках не знаю. Для 1 строки выводится document.form.priceSOut1.value=total; Как вместо "1" вставить "i"?
     
    Bedman нравится это.
  2. Bedman

    Bedman Создатель

    Регистр.:
    4 июл 2012
    Сообщения:
    25
    Симпатии:
    6
    В каждой строке на сайте есть поля priceSOut1, priceSOut2, priceSOut3... значение этих полей рассчитывается отдельно для каждого i++
    Код:
    <tr><td><input type="checkbox" name="box1" id="s1" value="3200" onclick="SumSmall()">Капот (полностью)<BR></td><td width="70">3200</td><td><SELECT id="nums1" NAME="Items1" onclick="SumSmall()"><OPTION VALUE ="2" checked>2<OPTION VALUE ="4">4</select></td><td><input type="text" name="priceSOut1" value=""></td></tr>
    
    Обработчик цикличиски получает значения поля checkbox, умножает их на значения поля select и должен выводить результат в поле input.
    Код:
     if(elem.checked)total=parseInt(elem.value)*parseInt(num.value);
    document.form.priceSOut1.value=total;
    Потом, идёт сложение полей input и выводится общая сумма.
    Всю головушку поизломал как сделать вывод поле с переменным названием в зависимости от текущего значения i++ priceSOut(i)?
     
  3. xpert13

    xpert13 <(*_*)>

    Moderator
    Регистр.:
    7 ноя 2008
    Сообщения:
    182
    Симпатии:
    453
    Так разве нельзя?

    Код:
    document.form.elements['priceSOut' + i].value = total;
    В крайнем случае всегда можно воспользоватся jQuery или по крайней мере посмотреть как он это делает
     
    Bedman нравится это.
  4. Bedman

    Bedman Создатель

    Регистр.:
    4 июл 2012
    Сообщения:
    25
    Симпатии:
    6
    Кому нужно, забирайте готовое решение. Отправку писем ещё не доделал, но кое что отправляет. Если кто может доделать и поделиться, буду благодарен. Всё сделано методом тыка, не судите строго. Стили удалены. Оригинал калькулятора лежит на этом сайте.
    У меня выглядет так:
    [​IMG]
     

    Вложения:

  5. alexXXL

    alexXXL Постоялец

    Регистр.:
    7 май 2012
    Сообщения:
    123
    Симпатии:
    8
    Раз уж зашла речь о калькуляторах, может и мне поможете? В соседнем разделе я уже описал проблему, порекомендовали обратиться в этот раздел.
    Мне в калькуляторе нужно реализовать выбор тарифа перевозки в зависимости от веса груза. После изучения различных самоучителей по javascript я создал такой код:
    Код:
    <script type="text/javascript">
    var wes = document.calcForm.wes.value; //получаем значение веса из формы
    var tar_w; //определяю переменную тарифа перевозки
    if(wes < 500){tar_w = 4.4;}
    else {
      if(wes >= 500 && wes < 800){tar_w = 4.2;}
      else {
        if(wes >= 800 && wes < 1500){tar_w = 4;}
        else  {
        if(wes >= 1500 && wes < 3000){tar_w = 3.9;}
        else {tar_w = 3.7;}
        }
      }
    }
    </script>
    Правильно ли я составил скрипт и как теперь вывести в форму результат {tar_w}?
     
  6. Bedman

    Bedman Создатель

    Регистр.:
    4 июл 2012
    Сообщения:
    25
    Симпатии:
    6
    В форме определяешься с местом куда нужно вывести значение и вставляешь туда код
    Код:
    <input type="text" name="tarOut" value="" >
    В конец скрипта вставляем обработчик
    Код:
    document.calcForm.tarOut.value=tar_w;
    Вроде, как-то так
     
  7. alexXXL

    alexXXL Постоялец

    Регистр.:
    7 май 2012
    Сообщения:
    123
    Симпатии:
    8
    Поле в форме появилось, но оно пустое.
     
  8. Bedman

    Bedman Создатель

    Регистр.:
    4 июл 2012
    Сообщения:
    25
    Симпатии:
    6
    Держи подгон с барского плеча. Тоже недавно делал калькулятор со схожим функционалом. Обрежешь ненужные поля, пересчитаешь формулы и всё. Стили удалены. [​IMG]
     

    Вложения:

  9. Arcos

    Arcos Писатель

    Регистр.:
    28 окт 2012
    Сообщения:
    2
    Симпатии:
    0
    Как решил задачу с FormCalc?
    У мяня тот же вопрос на счет нескольких условий. По умолчанию без Java Script FormCalc решает только одно условие, а нужно вычислить скидку в зависимости от количества выбранного товара.
     
  10. alexXXL

    alexXXL Постоялец

    Регистр.:
    7 май 2012
    Сообщения:
    123
    Симпатии:
    8
    Пока никак не решил. Приходится самостоятельно изучать JavaScript и методом тыка преодолевать трудности.