简体   繁体   English

我需要将贷款计算器从滑块之一更改为输入文本框

[英]I need to change loan calculator from one of the slider to input textbox

I have a loan calculator that works fine until i change one of the slider in to input box.我有一个贷款计算器,它可以正常工作,直到我将其中一个滑块更改为输入框。 when i change the properties in the javascript, it just doesnt work.当我更改 javascript 中的属性时,它不起作用。 I would like to know how to make my input in my js section works.我想知道如何使我在 js 部分中的输入有效。 As my client wants it changed to a text box.正如我的客户希望将其更改为文本框。

Here is my HTML Code Snippet:这是我的 HTML 代码片段:

           <div class="loan-calculator" style="padding-bottom: 1px;">
                    <div class="loan-calculator__controls-list">
                    <div class="loan-calculator__control loan-calculator-control">
                        <span class="loan-calculator-control__caption">My Spendings: <b>RM <span data-money-range-value></span></b></span>
                        <!-- <div class="loan-calculator-control__range loan-calculator-range-slider loan-calculator-range-slider--money" data-money-range-slider></div> -->
                        <input type="number" class="form-control" placeholder="Spendings" aria-label="spendings" spendings-input>
                        <div class="loan-calculator-control__help-values">
                            <div class="loan-calculator-control__min-value">Min Spendings: RM 0</div>
                            <div class="loan-calculator-control__max-value">Maximum Spendings: RM 10,000+</div>
                        </div>
                    </div>
                    <div class="loan-calculator__control loan-calculator-control">
                        <span class="loan-calculator-control__caption">Merchant: <b><span data-months-range-value>3</span> <span data-months-range-measure></span></b></span>
                        <div class="loan-calculator-control__range loan-calculator-range-slider loan-calculator-range-slider--months" data-months-range-slider></div>
                        <div class="loan-calculator-control__help-values">
                        <div class="loan-calculator-control__min-value">Min Percentage: 0%</div>
                        <div class="loan-calculator-control__max-value">Maximum Percentage: 200%</div>
                        </div>
                    </div>
                    </div>
                </div>

Here is my Javscript for the slider:这是我的滑块 JavaScript:

var moneyRangeSliderElem = document.querySelector("[spendings-input]");
var moneyRangevalueElem = document.querySelector("[data-money-range-value]");

var monthsRangeSliderElem = document.querySelector(
  "[data-months-range-slider]"
);
var monthsRangeValueElem = document.querySelector("[data-months-range-value]");
var monthsRangeMeasureElem = document.querySelector(
  "[data-months-range-measure]"
);

var resultValueElem = document.querySelector("[data-result-value]");

// noUiSlider.create(moneyRangeSliderElem, {
//   start: [5000],
//   step: 1,
//   connect: [true, false],
//   format: wNumb({
//     decimals: 0
//   }),
//   range: {
//     min: 0,
//     max: 10000
//   }
// });


noUiSlider.create(monthsRangeSliderElem, {
  start: [30],
  step: 1,
  connect: [true, false],
  format: wNumb({
    decimals: 0
  }),
  range: {
    min: 1,
    max: 200
  }
});

function calcPayment() {
  var moneyValue = parseInt(moneyRangeSliderElem, 10);
  var monthsValue = parseInt(monthsRangeSliderElem.noUiSlider.get(), 10);

  console.log(-pmt(0.24/12, monthsValue, moneyValue))

  resultValueElem.textContent = numberFormatter.format(
    moneyValue * monthsValue * 0.01
  );
}

moneyRangeSliderElem.on("input", function(values, handle) {
  moneyRangevalueElem.textContent = numberFormatter.format(values[handle]);

  calcPayment();
});

monthsRangeSliderElem.noUiSlider.on("update", function(values, handle) {
  monthsRangeValueElem.textContent = values[handle];
  monthsRangeMeasureElem.textContent = wordForm(values[handle], [
    "%",
    "%",
    "%"
  ]);

  calcPayment();
});

所以你有两个滑块 - 一个用于金钱,另一个用于几个月?

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM