Javascript.RU

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

Скрипт подсчета суммы по выборке, нужна помощь
Здравствуйте. Очень нужна ваша помощь... Есть скрипт подсчета суммы по выборке (ввод числа input text и чекбокс) - http://pastebin.com/i1X7xugT . Помогите пожалуйста сделать так, чтобы работала выборка по option value и чтобы можно было бы указать % в чекбокс, допустим я ставлю чекбокс - 25% и от суммы ранних просчетов по форме была скидка в размере - 25%...Заранее спасибо за помощь!
Ответить с цитированием
  #2 (permalink)  
Старый 30.06.2015, 12:38
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,070

usebest,
попробуйте более подробно описать что и как вы хотите суммировать и где в вашем коде 25%?
Ответить с цитированием
  #3 (permalink)  
Старый 30.06.2015, 12:51
Новичок на форуме
Отправить личное сообщение для usebest Посмотреть профиль Найти все сообщения от usebest
 
Регистрация: 30.06.2015
Сообщений: 9

Сейчас скрипт подсчитывает числа в один input , допустим я ввожу в первое поле 10, в второе 15, и в инпуте id text идет подсчет и выводит 25. В этом скрипте подсчитывает только в полях type=text и checkbox, мне нужно чтобы работал так же подсчет по select , к примеру я выбираю из списка селекса какое-то значение и из value(option) число тоже подсчитывается вместе с остальными полями.
<select name="u1"  class="chkOptions">
            <option value="0" selected="selected">нет</option>
    <option value="120">1 упаковка</option>
    <option value="240">2 упаковки</option>
    <option value="300">3 упаковки</option>
</select>


По поводу % в чекбоксе, я имею ввиду вот в коде <input type="checkbox" id="chk2" value="10" class="sum" /> , value="10" и есть %, только нужно это кодом прописать чтобы алгоритм считал это не как число, а как % от остальных подсчетов, пример: Я выбрал из селекта значения - 10, и появилось первое число, потом выбрал второй селект - 25, и их значения по value просто суммируются и выходит в input id="text" = 35 , потом я ставлю галочку чекбокса 10, и от 35 идет пересчет на - 10%, то бишь алгоритм - 35-(35*10/100)=31,5(со скидкой 10%)

Последний раз редактировалось usebest, 30.06.2015 в 12:53.
Ответить с цитированием
  #4 (permalink)  
Старый 30.06.2015, 13:33
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,070

usebest,
уже лучше, но где в селекте - 10?
Сообщение от usebest
Я выбрал из селекта значения - 10
и где второй селект ?
Сообщение от usebest
потом выбрал второй селект
Ответить с цитированием
  #5 (permalink)  
Старый 30.06.2015, 13:41
Новичок на форуме
Отправить личное сообщение для usebest Посмотреть профиль Найти все сообщения от usebest
 
Регистрация: 30.06.2015
Сообщений: 9

Вот я изменил структуру формы с необходимыми селектами и чекбоксами http://pastebin.com/EHR2pc7Z
Ответить с цитированием
  #6 (permalink)  
Старый 30.06.2015, 13:42
Новичок на форуме
Отправить личное сообщение для usebest Посмотреть профиль Найти все сообщения от usebest
 
Регистрация: 30.06.2015
Сообщений: 9

Сообщение от рони Посмотреть сообщение
usebest,
уже лучше, но где в селекте - 10?

и где второй селект ?
Я не говорил конкретно в селекте - 10, я говорил за значение которое в option value="число" , а 10 взял за пример
Ответить с цитированием
  #7 (permalink)  
Старый 30.06.2015, 13:49
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,070

usebest,
и что теперь с чем складывать?
Ответить с цитированием
  #8 (permalink)  
Старый 30.06.2015, 13:50
Новичок на форуме
Отправить личное сообщение для usebest Посмотреть профиль Найти все сообщения от usebest
 
Регистрация: 30.06.2015
Сообщений: 9

Алгоритм просчета с % по чекбоксу я уже сделал, осталось мне непонятно как сделать чтобы бралось значение из селекта и суммировались с остальными, к type=text сделано так -
if ((type == "text")) {
                  sum += parseInt($(this).val(), 10) || 0;
              }
, а как сделать так же для селекта? пробовал вот так
if (el.attr("selected")) {
                  sum += parseInt($(this).val(), 10) || 0;
              }
но не работает...Помогите пожалуйста
Ответить с цитированием
  #9 (permalink)  
Старый 30.06.2015, 13:54
Новичок на форуме
Отправить личное сообщение для usebest Посмотреть профиль Найти все сообщения от usebest
 
Регистрация: 30.06.2015
Сообщений: 9

Вот https://jsfiddle.net/Qt3cf/100/ как сейчас у меня вышло, 2 поля с вводом чисел, и чекбокс %, все работает кроме селекта, когда выбираю допустим 1 упаковка, то число из option value не суммируется с остальными...Помогите решить пожалуйста
Ответить с цитированием
  #10 (permalink)  
Старый 30.06.2015, 14:08
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,070

usebest,
вариант того как я вас понял
<!DOCTYPE HTML>

<html>

<head>
  <title>Untitled</title><meta charset="utf-8">
  	<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
</head>

<body>




    <form action="" method="POST">
    <input type="text" name="text1" id="text1" class="sum" /><br />
    <input type="text" name="text2" id="text2" class="sum" /> <br />
      <select name="u1"  class="chkOptions">
        <option value="0" selected="selected">нет</option>
        <option value="120">1 упаковка</option>
        <option value="240">2 упаковки</option>
        <option value="300">3 упаковки</option>
    </select>

     <select name="u2"  class="chkOptions2">
        <option value="0" selected="selected">нет</option>
        <option value="121">4 упаковка</option>
        <option value="245">5 упаковки</option>
        <option value="302">6 упаковки</option>
    </select>
        <br />
        <input type="checkbox" id="chk1" value="400" class="sum" /><label for="chk1">400</label> <br />
        <input type="checkbox" id="chk2" value="100" class="sum" /><label for="chk2">100</label> <br />

     <input type="checkbox" id="chk3" value="41" class="sale" /><label for="chk3">41%</label> <br />
        <input type="checkbox" id="chk4" value="15" class="sale" /><label for="chk4">15%</label> <br />

     <input type="checkbox" id="chk5" value="43" class="sale" /><label for="chk5">43%</label> <br />
        <input type="checkbox" id="chk6" value="16" class="sale" /><label for="chk6">16%</label> <br />

      Итого  <input type="text" name="text" id="text">
    </form>
    <script>
    $(function() {
    var calc = function() {
        var sum = 0;
        $("select,.sum[type='text'],.sum:checked", fields).each(function() {
            sum += +this.value||0
        });
        var sale = 0;
        $(".sale:checked", fields).each(function() {
            sale += +this.value
        });
        $("#text").val((sum - sum * sale / 100).toFixed(2))
    };
    fields = $("form");
    fields.on('input change',calc)
});
    </script>
</body>

</html>

Последний раз редактировалось рони, 30.06.2015 в 15:17.
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Нужна помощь по javascript darklend Общие вопросы Javascript 0 12.01.2014 23:33
Нужна помощь в модификации скрипта zonkon Общие вопросы Javascript 15 26.10.2013 09:40
Динамический Фон сайта, нужна помощь Eugesh Общие вопросы Javascript 0 27.09.2013 17:41
Скрипт сложение работает не так, нужна помощь! saves7 Общие вопросы Javascript 4 09.08.2013 08:07
добавление окошка в скрипт подсчета слов Гость Общие вопросы Javascript 10 11.03.2008 17:07