2014-09-02 43 views
2

我可能会在这部分中丢失使用多个数组来匹配我的Unit over Size和数组内的静态值。我想在这里做的是让每个电台代表一个与选择相匹配的数量。带静态数组的jQuery自定义计算器

例如,如果我在8平方米(尺寸)下单击Low(单位)时,Array的静态值应为320 000 ...等等。与尺寸部分相同。

$(function(){ 
    $("form #calc-standard li").each(function (i) { 
     i = i+1; 
     $(this).addClass("item"+i); 

     // Temporary pattern 
     var eightSqm = ["260 000", "320 000", "400 000"]; 

     // Main pattern 
     var prices = [ 
      ["160 000", "210 000", "260 000", "310 000", "370 000"], 
      ["190 000", "250 000", "320 000", "380 000", "440 000"], 
      ["250 000", "310 000", "400 000", "480 000", "560 000"] 
     ]; 

     $("#calc-standard input[type='radio']").on("change", function(){ 
      if($(this).val() == $(this).data('unit')) { 

       // Get the Unit by Matching the Temporary Pattern 
       var units = $(this).data('unit'); 

       // Post Estimate Output 
       $("form #estimation").val(eightSqm[ units ]); 
      } 
     }); 
    }); 
}); 

临时模式是目前我在这里使用的数组。我只需要弄清楚什么是我需要用我的“主要模式”进行计算的正确条件。对不起我没有在这里...

这是我的示例完整的代码。

Calculator in jSFiddle

回答

2

好吧,我弄清楚什么是问题。这是我对这个计算器的最终解决方案。

$("form fieldset").each(function (i) { 
    i = i+1; 
    $(this).addClass("item"+i); 

    var prices = [ 
     ["kr 160 000,-", "kr 210 000,-", "kr 260 000,-", "kr 310 000,-", "kr 370 000,-"], 
     ["kr 190 000,-", "kr 250 000,-", "kr 320 000,-", "kr 380 000,-", "kr 440 000,-"], 
     ["kr 250 000,-", "kr 310 000,-", "kr 400 000,-", "kr 480 000,-", "kr 560 000,-"] 
    ]; 

    r = 1; 
    c = 2; 

    $('.item'+i+' input').bind('change', function(){ 
     r = $('input[name=standard]:checked').val(); 
     c = $('input[name=size]:checked').val(); 

     $("form #estimation").val(prices[r][c]); 
    }); 
}); 

请检查我的jSFiddle的实际代码和功能。