jquery ui,具有多种功能的多个滑块 - MATHS问题

时间:2013-11-02 19:06:36

标签: javascript jquery jquery-ui

我正在尝试创建多个滑块来配置托管包。我有1个问题和1个问题的建议或帮助正确的方向。在下面的代码中,我试图将UI.VALUE从滑块中除以1,这应该给我钱的数字。每1000mb它将额外增加1.00。出于某种原因,下面的数学分歧被忽略了。 (var cost = ui.value/1; $( "#cost" ).val( "£" + cost );

$(function() {
    $("#slider_storage").slider({
        value: 100,
        min: 0,
        max: 10000,
        step: 500,
        slide: function(event, ui) {
            $("#storage").val(ui.value + "MB");
            var cost = ui.value / 1;
            $("#cost").val("£" + cost);
        }
    });
    $("#slider_transfer").slider({
        value: 100,
        min: 0,
        max: 10000,
        step: 500,
        slide: function(event, ui) {
            $("#transfer").val(ui.value + "MB");
            var cost = ui.value / 1;
            $("#cost").val("£" + cost);
        }
    });
    $("#slider_cams").slider({
        value: 100,
        min: 0,
        max: 10,
        step: 1,
        slide: function(event, ui) {
            $("#cams").val(ui.value);
            var cost = ui.value / 1;
            $("#cost").val("£" + cost);
        }
    });
    $("#storage").val($("#slider").slider("value") + "MB");
    $("#cost").val("£" + $("#slider").slider("value"));
});

我还希望其他滑块更新价格值以及数学问题的第一个slider_storage,这样做的最佳方法是保持从其他滑块中减去和添加的值。< / p>

这里是js fiddle http://jsfiddle.net/dFwtA/

感谢您在高级方面的帮助:)

1 个答案:

答案 0 :(得分:0)

我为自己制作了一个类似的抵押贷款计算器,检查小提琴,它可能对你有帮助:)。

<强> http://jsfiddle.net/48Hpa/19/

$(document).ready(function(){

    $(function() {
        $( "#slider1" ).slider({
          range: "min",
          value: 36,
          min: 12,
          max: 36,
          slide: function( event, ui ) {
            $( ".amount1" ).val( ui.value);
              writesum();
          }
        });
        $( ".amount1" ).val($( "#slider1" ).slider( "value" ));
      });

    $(function() {
        $( "#slider2" ).slider({
          range: "min",
          value: 50000,
          min: 1,
          max: 50000,
          slide: function( event, ui ) {
            $( ".amount2" ).val( ui.value );
              writesum();
          }
        });
        $( ".amount2" ).val( $( "#slider2" ).slider( "value" ));
      });


    function writesum() {
      var months = $('.amount1').val();
      var credits = $('.amount2').val();
      var payment = parseFloat(Number(credits) / Number(months))
      var rounded = payment.toFixed(2);
          $('.amount3').val(rounded);
    }
});