首页 > 解决方案 > jQuery总和

问题描述

我有一个总和 2 个值的脚本。我计划添加更多价值,但首先我需要让它发挥作用。人们告诉我给他们 NUMBER 值,所以我做了,但现在它甚至没有给出输出。

base = 0;
$("#FenceCorners").on("change", function() {
  var total = (base * 100 + $(this).find(":selected").data("price") * 100) / 100; // selector
  $("#yett").val('Total €' + number(total.toFixed(2).replace(/\./g, ','))); // total value
});

$(function() {
  var begin = 720; // standard value (start value)
  $("#yett").val('Total €' + number(begin.toFixed(2).replace(/\./g, ','))); // total value
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<select name="iFenceCorners" id="FenceCorners" class="AutosubmitCalculator" tabindex="3">
  <option value="0" selected="selected" data-price="00.00">Geen hoeken</option>
  <option value="1" data-price="20.00">1 hoek</option>
  <option value="2" data-price="40.00">2 hoeken</option>
  <option value="3" data-price="60.00">3 hoeken</option>
  <option value="4" data-price="80.00">4 hoeken</option>
  <option value="5" data-price="100.00">5 hoeken</option>
  <option value="6" data-price="120.00">6 hoeken</option>
  <option value="7" data-price="140.00">7 hoeken</option>
  <option value="8" data-price="160.00">8 hoeken</option>
  <option value="9" data-price="180.00">9 hoeken</option>
  <option value="10" data-price="200.00">10 hoeken</option>
</select>

<div class="SummaryRow">
  <h1><input type="yeets" name="_mdjm_event_cost" id="yett" class="mdjm-input-currency required" readonly="readonly" value="" placeholder="Totaal €0.00" style="height: 100px; width: 275px; margin-top: -40px; color: black; font-weight: bold;" />
  </h1>
</div>

我的想法是我有一个标准的 720 值,然后让选择器将值添加到该值并使其总和并在输出中打印出来。

标签: jqueryinputoutput

解决方案


替换input type="yeets"input type="text"因为yeets不是一种 html 输入。

而不是这条线// $("#yett").val('Total €' + number(total.toFixed(2).replace(/\./g, ',')));试试这个$("#yett").val('Total €' + total.toFixed(2));,因为number没有定义。

作为同样的事情而不是这个$("#yett").val('Total €' + number(begin.toFixed(2).replace(/\./g, ',')));尝试这个$("#yett").val('Total €' + begin.toFixed(2));,因为这里也number没有定义。

$(document).ready(function(){
base = 0;
$("#FenceCorners").on("change", function() {
  var total = (base * 100 + $(this).find(":selected").data("price") * 100) / 100; // selector
 
 // $("#yett").val('Total €' + number(total.toFixed(2).replace(/\./g, ','))); // total value
   $("#yett").val('Total €' + total.toFixed(2));
});

$(function() {
  var begin = 720; // standard value (start value)
  $("#yett").val('Total €' + begin.toFixed(2)); // total value
});
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/2.1.4/jquery.min.js"></script>
<div class="SummaryRow">
<h1><input type="text" name="_mdjm_event_cost" id="yett" class="mdjm-input-currency required"  value="" placeholder="Totaal €0.00" style="
  height: 100px;
  width: 275px;
  margin-top: -40px;
  color: black;
  font-weight: bold;"/>
</h1>
</div>
<select name="iFenceCorners" id="FenceCorners" class="AutosubmitCalculator" tabindex="3">
  <option value="0" selected="selected" data-price="00.00">Geen hoeken</option>
  <option value="1" data-price="20.00">1 hoek</option><option value="2" data-price="40.00">2 hoeken</option><option value="3" data-price="60.00">3 hoeken</option><option value="4" data-price="80.00">4 hoeken</option>
  <option value="5" data-price="100.00">5 hoeken</option><option value="6" data-price="120.00">6 hoeken</option><option value="7" data-price="140.00">7 hoeken</option><option value="8" data-price="160.00">8 hoeken</option>
  <option value="9" data-price="180.00">9 hoeken</option><option value="10" data-price="200.00">10 hoeken</option>
</select>


推荐阅读