Ver Mensaje Individual
  #3 (permalink)  
Antiguo 16/10/2013, 13:14
xnco77
 
Fecha de Ingreso: abril-2009
Mensajes: 201
Antigüedad: 15 años, 7 meses
Puntos: 4
Respuesta: Calculadora para inputs

hola estuve investigando y me encontré el siguiente codigo que calcula, pero arroja un resultado de pago mensual y yo quiero que de uno que diga Pago Total:

Código Javascript:
Ver original
  1. function calcul(){
  2.     var interest_rate = 0.0208;
  3.     var amount = parseInt($("#amount").attr("value"));
  4.     var months = parseInt($("#length").attr("value"));
  5.     var total_payment = calculate_pmt(interest_rate, months, amount);
  6.     $("#installment").val(Math.round(total_payment));
  7. }
  8.  
  9. function calculate_pmt(interest, months, principal){
  10.     principal = Math.abs(principal) * -1;
  11.     return interest * principal * Math.pow((1 + interest), months) / (1 - Math.pow((1 + interest), months));
  12. }
  13.  
  14. $(document).ready(function(){
  15.     //lets get the values from the meta loan helper;
  16.     var _loanMetaObj = window.top._loanMeta;
  17.     if(typeof(_loanMetaObj) == "undefined") {
  18.         var min = 2000;
  19.         var max = 43000;
  20.         var init_value = 10000;
  21.         var step = 100;
  22.     }else {
  23.         var min = (typeof(_loanMetaObj.currencies.COP.minAmount) == "undefined") ? 2000 : _loanMetaObj.currencies.COP.minAmount;
  24.         var max = (typeof(_loanMetaObj.currencies.COP.maxAmount) == "undefined") ? 43000 : _loanMetaObj.currencies.COP.maxAmount;
  25.         var init_value = (typeof(_loanMetaObj.currencies.COP.minAmount) == "undefined") ? min : 10000;         
  26.         var step = (typeof(_loanMetaObj.currencies.COP.stepAmount) == "undefined") ? 100 : _loanMetaObj.currencies.COP.stepAmount;     
  27.     }  
  28.    
  29.     $("#amountslider").slider({
  30.         value: init_value,
  31.         min: min,
  32.         max: max,
  33.         step: step,
  34.         slide: function(event,ui){
  35.             $("#amount").val(ui.value);
  36.             calcul();
  37.         }
  38.     });
  39.     $("#amount").val($("#amountslider").slider("value"));
  40.     calcul();
  41.  
  42.     $("#lengthslider").slider({
  43.         value: 12,
  44.         min: 3,
  45.         max: 12,
  46.         step: 1,
  47.         orientation: "horizontal",
  48.         slide: function(event,ui){
  49.             $("#length").val(ui.value);
  50.             calcul();
  51.         }
  52.     });
  53.     $("#length").val($("#lengthslider").slider("value"));
  54.     calcul();
  55.  
  56. });

yo lo he intentado de adaptar al que ya tengo pero en el value arroja la palabra NAN.

Este es el mio, sin modificaciones.
Código Javascript:
Ver original
  1. // JavaScript Document
  2.   $(function() {
  3.     $( "#slider-range-min" ).slider({
  4.       range: "min",
  5.       value: 600000,
  6.       min: 65000,
  7.       max: 1179000,
  8.       step: 5000,
  9.       slide: function( event, ui ) {
  10.         $( "#amount, #mcredito, #mcredito2" ).val( "$" + ui.value );
  11.       }
  12.     });
  13.     $( "#amount, #mcredito, #mcredito2" ).val( "$" + $( "#slider-range-min " ).slider( "value" ) );
  14.   });
  15.    
  16.   $(function() {
  17.     $( "#slider-range-min2" ).slider({
  18.       range: "min",
  19.       value: 6,
  20.       min: 1,
  21.       max: 12,
  22.       step: 2,
  23.       slide: function( event, ui ) {
  24.         $( "#tiempo, #tiempo2, #tiempo3" ).val( "" + ui.value );
  25.       }
  26.     });
  27.      $( "#tiempo, #tiempo2, #tiempo3" ).val( "" + $( "#slider-range-min2" ).slider( "value" ) );
  28.   });
  29.  
  30.     $("#tiempo2").val($("#slider-range-min2").slider("value"));