【问题标题】:How to apply if satement and calculate in JavaScript如何在 JavaScript 中应用 if 语句和计算
【发布时间】:2014-11-17 06:38:58
【问题描述】:

如何应用 if 语句并使用 JavaScript 计算一组单选按钮?

到目前为止,它可以将总数相加。但我希望它仅在他们选择“是”时应用 150.00 美元的折扣。

这是我尝试使用的单选按钮。

    <p>Baby Plan<br />
        [radio BPSUBPT id:BPSUBPT class:radio-vertical "Baby Plan $300.00 3 Sessions" "Baby Plan $500.00 4 Sessions"] </p>

    <p>Did you have a Newborn session With ADP? <br />
[radio BPSUPQ id:BPSUPQ class:radio-vertical "Yes $-150 off" "No $000.00"]</p>

    <p>Baby Plan Totals: <br />
    Baby Plan Price: [text BPSUTotal 28/28 id:BPSUTotal]
    Discount Amount: [text BPSUDA 8/8 id:BPSUDA]

    Total Price: <span id="total"></span>

我现在的 JavaScript:

<script>
$(document).ready(function() {
    var inputs = $('input[name="BPSUBPT"], input[name="BPSUPQ"]');
    $(inputs).click(function() {
        var total = 0;
        $(inputs).filter(':checked').each(function() {
            // Now including the - sign
            var value = ($(this).val()).match(/\$(-?[0-9]*)/)[1];
            if (value) {
                // I'm now ADDing the total
                // total = total + parseInt(value);
                total += parseInt(value);
            }
        });
        $('#total').html('$' + total);
          $('#BPSUBA').val('$' + total);
});
    $('input[name="BPSUBPT"]').click(function() {
        $(this).blur();
        $('#BPSUBPP').val($(this).val());
    })
    $('input[name="BPSUPQ"]').click(function() {
        $(this).blur();
        $('#BPSUDA').val($(this).val());
   });
}); 
</script>

我想要一个值为 Yes| 的单选按钮从婴儿计划的单选按钮组中减去 150.00 美元。

【问题讨论】:

  • Giri 不起作用,唯一有管道的集合是您是否与 ADP 进行了新生儿会话?收音机。我要去睡觉了,这里已经很晚了。我会在早上。

标签: javascript jquery if-statement contact-form-7 calculated-field


【解决方案1】:

尝试注释掉您的旧代码并改用此方法。此外,有时当您有两个具有相同名称的字段时,它可能会变得很棘手,有时甚至会失败。

$(document).ready(function(){
    var radio1 = $('input[name="BPSUBPT"]');
    var radio2 = $('input[name="BPSUBQ"]');
    var selectedValue = '';
    $(radio1).on('click', function(){
        $(radio1).each(function(index, value){
            var checked = $(this).is(':checked');
            if(checked && index == '0'){
                selectedValue = 300;
                $('#BPSUTotal').val(selectedValue);
            } else if(checked && index == '1'){
                selectedValue = 500;
                $('#BPSUTotal').val(selectedValue);
            }
        });
    });

    $(radio2).on('click', function(){
        var checked = $(this).is(':checked');
        if(checked && selectedValue != ''){
            var oldValue = $('#BPSUTotal').val();
            var newValue = oldValue - 150;
            $('#BPSUTotal').val(newValue);
        }
    });

});

【讨论】:

  • Giri 感谢您回答我的问题,我正在使用联系表格 7 填写表格。我将如何将其应用于我的表单,我是新手
  • 您是否尝试将其添加到您的 $document.ready 函数中?可能需要一个事件处理程序。如果有帮助,我将使用事件处理程序更新答案
  • 是的,我做了,但它没有做任何事情,让我给你表格的链接也许这会帮助你看看我想要做什么Page我也想得到一个将 150 值复制到文本字段,
  • 是的,我可以看到那里发生了什么。我们需要稍微调整一下代码。完成后,我将在这里重新编辑答案。
  • 这里的问题是输入类型收音机有一个值=“婴儿计划300美元会话”作为字符串。 .val() 和计算不运行的原因。
猜你喜欢
  • 1970-01-01
  • 2022-01-19
  • 2018-11-04
  • 1970-01-01
  • 1970-01-01
  • 2021-11-22
  • 2023-03-24
  • 2022-01-08
  • 2020-08-23
相关资源
最近更新 更多