【问题标题】:Get sum from more input radio button values从更多输入单选按钮值中获取总和
【发布时间】:2018-08-08 08:38:57
【问题描述】:

你能帮帮我吗? 这是我形式的一部分。在动态检查后,我想要更多输入(类型=无线电)的值总和。我想计算总价(变量 - $res)。 我知道这是字符串,但是当我将 settype 更改为 int 时,它不起作用。 请帮帮我:)

                      <div class="wrapper_input">
                    <input type="radio" name="fee" id="radio1" value="300">
                    <label for="radio1">D1 &nbsp;300,00 €</label>
                  </div>
                  <div class="wrapper_input">
                    <input type="radio" name="fee" id="radio2" value="150">
                    <label for="radio2">D2 &nbsp;150,00 €</label>
                  </div>
            <script>
                $('.wrapper_input input[type=radio]').on('change', function(event) {
                var result = $(this).val();
                $('.result').html(result);
                })
            </script>
            <?php
                $prem = "<span class='result'></span>";
            ?>
            <br>
                  <div class="case2">
                    <input type="radio" name="fee1" id="radio1" value="300">
                    <label>D5 &nbsp;300,00 €</label>
                  </div>
                  <div class="case2">
                    <input type="radio" name="fee1" id="radio2" value="150">
                    <label for="radio6">D6&nbsp;150,00 €</label>
                  </div>
            <script>
                $('.case2 input[type=radio]').on('change', function(event) {
                var result2 = $(this).val();
                $('.result2').html(result2);
                })
            </script>
            <?php                   
                $prem2 = "<span class='result2'></span>";
            ?>
            <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
            TOTAL PRICE 
            <?php 
                $res = $prem + $prem2;
                echo $res;
            ?>

【问题讨论】:

  • 你在服务器端计算总和的意图是什么?
  • 它的形式。我需要这笔钱来保存到 mysql 数据库。
  • 为什么不让访问者在客户端完成总和并在提交后将其存储在您的数据库中?
  • 这是个好主意。但我不知道我该怎么做:/
  • 您正在使用 php,就像您使用 JS 一样 - 您无法获取它的值或文本 - 您只是将其设置为 HTML - 另外,您正在尝试使用字符串进行数学运算。 PHP 在页面加载之前/期间发生在服务器上 - 你不能再次调用它。

标签: php jquery input sum radiobuttonlist


【解决方案1】:

根据提问者的评论,这里有一个简单的例子来计算客户端的总价格:

<html>
 <head>
  <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js">
  </script>
  <script type="text/javascript">
   var globalSum = 0;
   function summerize(formfieldObj)
   {
globalSum = 0;
formulaObj = $(formfieldObj).parents("form");
$(formulaObj).find("input[type='radio']:checked").each(function()
{
 globalSum = parseInt($(this).val()) + globalSum;
 $("#totalprice").html(globalSum);
 $(formulaObj).find("input[name='total']").val(globalSum);
});
   }
  </script>
 </head>
 <body>
  <form name="bla" method="post">
   <div class="wrapper_input">
 <input type="radio" name="fee" id="radio1" value="300" onClick="summerize(this)">
 <label for="radio1">D1 &nbsp;300,00 €</label>
  </div>
  <div class="wrapper_input">
 <input type="radio" name="fee" id="radio2" value="150" onClick="summerize(this)">
 <label for="radio2">D2 &nbsp;150,00 €</label>
  </div>
<br>
<div class="case2">
 <input type="radio" name="fee1" id="radio3" value="300" onClick="summerize(this)">
 <label for="radio3">D5 &nbsp;300,00 €</label>
  </div>
  <div class="case2">
 <input type="radio" name="fee1" id="radio4" value="150" onClick="summerize(this)">
 <label for="radio4">D6&nbsp;150,00 €</label>
  </div>
  <input type="submit" value="Pay">
  <input type="hidden" name="total">
   </div>
  </form>
  <div>TOTAL PRICE:<br><span id="totalprice"></span></div>
 </body>
</html>

希望这将有助于引导正确的方向。

【讨论】:

    猜你喜欢
    • 2014-08-04
    • 2013-01-28
    • 2018-03-20
    • 1970-01-01
    • 2021-08-25
    • 1970-01-01
    • 2022-07-07
    • 2015-10-20
    • 2021-12-29
    相关资源
    最近更新 更多