Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/83.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 获取增量输入微调器+&;-更新标签文本字段的步骤_Javascript_Jquery_Input_Label - Fatal编程技术网

Javascript 获取增量输入微调器+&;-更新标签文本字段的步骤

Javascript 获取增量输入微调器+&;-更新标签文本字段的步骤,javascript,jquery,input,label,Javascript,Jquery,Input,Label,我的javascript不是最好的。我这里有一些计算器形式的代码: 我的javascript: // Get a list of your products and pop them into a dropdownlist function GetProducts() { var products = V12.getFinanceProducts(); var ddlProducts = document.getElementBy

我的javascript不是最好的。我这里有一些计算器形式的代码:

我的javascript:

// Get a list of your products and pop them into a dropdownlist
        function GetProducts() {
            var products = V12.getFinanceProducts();
            var ddlProducts = document.getElementById('productsList');
            for (var i = 0; i < products.length; i++) {
                var newItem = new Option(products[i].name, products[i].productId);
                ddlProducts.appendChild(newItem);
            }
        }
        // Get details of repayments for the product selected
        function CalculateRepayments() {
            var productId = $('#productsList').val(); // selected product
            var financeProduct = V12.getFinanceProduct(productId); // get the object
            var cashPrice = $('#cashPrice').val();
            var depositFactor = $('#deposit').val();
            var deposit = cashPrice * (depositFactor / 100);
            var payments = V12.calculate(financeProduct, cashPrice, deposit);
            PopulateDescription(payments);
        }

        function UpdateLoanInfo() {
            $('#cashPrice').val($('#cpRange').val());
            $('#deposit').val($('#depRange').val());
            CalculateRepayments();
        }

        // Show repayment plan details in the description
        function PopulateDescription(payments) {
            $('#lblFinalPayment').html('');

            $('#lblDeposit').html('£' + payments.deposit);
            $('#lblInitPayments').html('£' + payments.initialPayments);
            $('#lblTotalRepayable').html('£' + payments.amountPayable);
            $('#lblInterest').html(payments.apr + '%');

            if (payments.initialPayments != payments.finalPayment && payments.finalPayment > 0) {
                $('#lblMonths').html(payments.months - 1);
                $('#lblFinalPayment').html(' and a final payment of £' + payments.finalPayment);
            } else {
                $('#lblMonths').html(payments.months);
            }
        }

        // Firing this will loop through your V12 products and grab the product with the lowest
        // possible monthly payments.
        function GetLowestMonthlyPayments() {
            var products = V12.getFinanceProducts();

            var lowestMonthlyPayment = 0;
            var lowestMonthlyPaymentProductId = 0;

            for (var i = 0; i < products.length - 1; i++) {
                var product = V12.getFinanceProduct(products[i].productId);
                var cashPrice = $('#cashPrice').val();
                var depositFactor = $('#deposit').val();
                var deposit = cashPrice * (depositFactor / 100);
                var payments = V12.calculate(product, cashPrice, deposit);
                var monthlyPayment = payments.initialPayments;

                if (parseFloat(lowestMonthlyPayment) > parseFloat(monthlyPayment) || lowestMonthlyPayment == 0) {
                    lowestMonthlyPayment = payments.initialPayments;
                    lowestMonthlyPaymentProductId = product.productId;
                }
            }
            $("#productsList").val(lowestMonthlyPaymentProductId);
            CalculateRepayments();
        }

        // Ready up our events
        (function ($) {
            GetProducts();
            CalculateRepayments();
            $('#productsList').on('change', function () {
                CalculateRepayments();
            });
            $('#cpRange, #depRange').on("input", function () {
                UpdateLoanInfo();
            });
            $('#lowestMonthlyPayments').click(function () {
                GetLowestMonthlyPayments();
            });
            $('#cashPrice, #deposit').keyup(function () {
                var cp = $('#cashPrice').val();
                var dep = $('#deposit').val();        
                $('#cpRange').val(cp);
                $('#depRange').val(dep);
                CalculateRepayments();
            });

         //spinner//
         $('<div class="quantity-nav"><div class="quantity-button quantity-up">+</div><div class="quantity-button quantity-down">-</div></div>').insertAfter('.quantity input');
            $('.quantity').each(function() {
              var spinner = jQuery(this),
                input = spinner.find('input[type="number"]'),
                btnUp = spinner.find('.quantity-up'),
                btnDown = spinner.find('.quantity-down'),
                min = input.attr('min'),
                max = input.attr('max');

              btnUp.click(function() {
                var oldValue = parseFloat(input.val());
                if (oldValue >= max) {
                  var newVal = oldValue;
                } else {
                  var newVal = oldValue + 100;
                }
                spinner.find("input").val(newVal);
                spinner.find("#cpRange").val(cp);
                spinner.find("#depRange").val(dep);
                spinner.find("input, #cashPrice").trigger("change");
              });

              btnDown.click(function() {
                var oldValue = parseFloat(input.val());
                if (oldValue <= min) {
                  var newVal = oldValue;
                } else {
                  var newVal = oldValue - 100;
                }
                spinner.find("input").val(newVal);
                spinner.find("input").trigger("change");
              });
            });

        })(jQuery);
//获取产品列表并将其弹出到下拉列表中
函数GetProducts(){
var products=V12.getFinanceProducts();
var ddlProducts=document.getElementById('productsList');
对于(变量i=0;i0){
$('lblMonths').html(payments.months-1);
$(#lblFinalPayment').html('和‘+payments.finalPayment的最终付款);
}否则{
$('lblMonths').html(payments.months);
}
}
//触发此命令将循环您的V12产品,并获取具有最低成本的产品
//可能的每月付款。
函数GetLowestMonthlyPayments(){
var products=V12.getFinanceProducts();
var lowestMonthlyPayment=0;
var lowestMonthlyPaymentProductId=0;
对于(变量i=0;iparseFloat(monthlyPayment)| | lowestMonthlyPayment==0){
lowestMonthlyPayment=payments.initialPayments;
lowestMonthlyPaymentProductId=product.productId;
}
}
$(“#productsList”).val(最低每月付款产品ID);
计算付款();
}
//准备好我们的活动
(函数($){
GetProducts();
计算付款();
$('#productsList')。在('change',function(){
计算付款();
});
$('#cpRange,#depRange')。打开(“输入”,函数(){
UpdateLoanInfo();
});
$(“#每月最低付款”)。单击(函数(){
GetLowestMonthlyPayments();
});
$(“#现金价格,#存款”).keyup(函数(){
var cp=$(“#现金价格”).val();
var dep=$(“#存款”).val();
$('#cpRange').val(cp);
$('depRange').val(dep);
计算付款();
});
//纺纱机//
$(“+-”).insertAfter(“.quantity input”);
$('.quantity')。每个(函数(){
var spinner=jQuery(this),
input=spinner.find('input[type=“number”]”),
btnUp=spinner.find('.quantity up'),
btnDown=spinner.find('.quantity down'),
min=input.attr('min'),
max=input.attr('max');
btnUp.click(函数(){
var oldValue=parseFloat(input.val());
如果(旧值>=最大值){
var newVal=旧值;
}否则{
var newVal=oldValue+100;
}
spinner.find(“输入”).val(newVal);
微调器.find(“#cpRange”).val(cp);
微调器.find(“#depRange”).val(dep);
微调器。查找(“输入,#现金价格”)。触发(“更改”);
});
单击(函数(){
var oldValue=parseFloat(input.val());

如果(oldValue如果我理解正确,您只缺少输入中有效值的
onchange
绑定:我还将您的按钮div更改为buttons。您可能需要检查滑块的初始值……非常感谢!您在那里为我节省了数小时!如果我理解正确,您只缺少
onchange
绑定输入中的有效值:我还将您的按钮div更改为按钮。您可能需要检查滑块的初始值…非常感谢!您在那里为我节省了几个小时!