如何在Laravel中使用JavaScript计算折扣

时间:2019-05-11 20:20:48

标签: laravel

我想使用JavaScript计算折扣,但无法获得正确的信息。我试图做点什么。这是我的代码。看一看:)

查看

<div class="form-group">
                    {!! Form::label('discount_percent', 'Discount Percent', ['class'=>'control-label']) !!}
                    {!! Form::number('discount_percent', null, ['class'=>'form-control discount']) !!}
                </div>
                <div class="form-group">
                    {!! Form::label('total_fee', 'Total Fee', ['class'=>'control-label']) !!}
                    {!! Form::text('total_fee', null, ['class'=>'form-control final_fee', 'readonly', 'name'=>'final_fee', 'id'=>'final_fee']) !!}
                </div>

JavaScript

$('.val').keyup(function () {
                var Fee = parseInt($('.final_fee').val());
                var discount = parseInt($('.discount').val());
                var FinalFee = Fee - ( Fee * discount / 100);
                $('#final_fee').val(FinalFee);
            });

1 个答案:

答案 0 :(得分:0)

您没有说明错误是什么。我可以猜测没有任何反应,这可能是因为您没有绑定输入。如果希望捕获任一输入,然后根据其中的值重新计算,则将keyup绑定到两个输入:

$('.discount, .final_fee').keyup(function () { ... }

第二个问题可能是您正在为变量的元素提取类。我不知道您的完整表单是什么样子,但是它可以帮助您标记要使用id而不是类来获取Fee和Discount的元素。请记住以以下形式添加#discount(您已经有了#final_fee),因此,这样重写方法可能会有所帮助:

$('#discount, #final_fee').keyup(function () {
     var Fee = parseInt($('#final_fee').val());
     var discount = parseInt($('#discount').val());
     var FinalFee = Fee - ( Fee * discount / 100);
     $('#final_fee').val(FinalFee);
 });

这应该可以帮助您达到目标。