使用 JS 计算一个值并将该值存储在数据库中

Calculating a value with JS and Storing that value in database

我正在用 js 计算 2 个值:

$('input').keyup(function(){ // run anytime the value changes
    var firstValue  = Number($('#user_send_fund_amount').val());
    var secondValue = Number($('#fixed_amount').val());
    document.getElementById('user_receive_fund_amount').value = firstValue * secondValue ;
document.getElementById('user_receive_fund_amount').setAttribute('readOnly', true);
document.getElementById('user_receive_fund_amount').removeAttribute('readOnly');`

并尝试存储此值:

<form  method="POST" class="form-register" action="{{ route('order.store') }}">
 @csrf
   <input id="user_send_fund_amount" type="number" class="form-control"
     name="user_send_fund_amount" required>
    <input type="number" value="{{$receive->buy}}" class="form-control"
        id="fixed_amount" hidden>
    <input type="number" class="form-control" id="user_receive_fund_amount" name="user_receive_fund_amount"/>
</form>

我的问题是:如何将这个计算值存储在数据库中?

您的代码在这一行中存在语法错误:

document.getElementById('user_receive_fund_amount').value = firstValue * secondValue ;});

从末尾删除 ;})。所以该行变为:

document.getElementById('user_receive_fund_amount').value = firstValue * secondValue;

您可以使用 JQuery 计算值,如下代码所示。

<script>
$(document).ready(function() { 
  $('#user_send_fund_amount').change(function(){
      var firstValue  = parseInt($('#user_send_fund_amount').val()) | 0;
      var secondValue = parseInt($('#fixed_amount').val()) | 0;
  $('#user_receive_fund_amount').val(firstValue * secondValue);
  });
});
</script>

<form  method="POST" class="form-register" action="{{ route('order.store') }}">
 @csrf
   <input id="user_send_fund_amount" value="0" type="number" class="form-control"
     name="user_send_fund_amount" required>
    <input type="hidden" value="{{$receive->buy}}" class="form-control"
        id="fixed_amount">
    <input type="number" readonly class="form-control" id="user_receive_fund_amount" name="user_receive_fund_amount"/>
</form>

只需进行此更改!并希望这会起作用: $("input[name=user_receive_fund_amount]").val(firstValue*secondValue);