2016-05-05 4 views
0

Я пытаюсь скрывать таблицу Excel, где несколько элементов зависит от ввода, который запускает некоторый Calc. и зависимость зависит от сумм на входах. Однако у меня возникают проблемы с их огнем, и некоторые результаты также SUPER запутывают, пытаясь подключить все эти функции к своим входам. Любая помощь приветствуется.Попытка запуска нескольких функций onchange

HTML

<input class="" id="avg-pumping-distance" type="number" value="30000"/> 
<br/> 


<h3 style="margin: 50px 0 0px;">Output</h3> 
<input style="margin: 0px 0 0px;" class="" id="num1" type="number" value="0"> 
<br/> 
<input style="margin: 20px 0 0px;" class="" id="num2" type="number" value="0"> 
<br/> 
<input style="margin: 20px 0 0px;" class="" id="num3" type="number" value="0"> 

JavaScript

var ReserveFloatingPipe = function() { 
    var val = 100 
    var val2 = 4400 
    var val3 = 100 
    var val4 = (val2 - val3) * val; 
    var val5 = val * val4; 
    var total = val5/1000; 
    $('#num1').val(total); 
    return total; 
}; 

ReserveFloatingPipe(); 
// console.log(ReserveFloatingPipe()); 



var ReserveSubPipe = function() { 
    var val = 100 
    var val2 = 5400 
    var val3 = 100 
    var val4 = (val2 - val3) * val; 
    var val5 = val * val4; 
    var total = val5/1000; 
    $('#num2').val(total); 
    return total; 
}; 

ReserveSubPipe(); 

var ReserveShorePipe = function() { 
    var val = 562 
    var val2 = 652 
    var val3 = 8500 
    var val4 = (val2 - val3) * val; 
    var total = val4/100; 
    $('#num3').val(total); 
    return total; 
}; 

ReserveShorePipe(); 
// console.log(ReserveShorePipe()); 

document.getElementById("avg-pumping-distance").onchange = (function() { 
     ReserveFloatingPipe(); 
     ReserveSubPipe(); 
     ReserveShorePipe(); 
}); 
+1

Вы не получаете никакой ценности из ваших материалов. ваши функции стреляют должным образом, я думаю. –

+0

В вашем слушателе 'onchange' вы ничего не делаете с возвращаемыми значениями вашей функции. Там вы должны использовать возвращаемые значения вашей функции для изменения DOM. –

ответ

0

Ваше об изменении функции привязки к вашему "Сред-насосная расстояния" входного элемента до того, как элемент существует. Вам необходимо привязать функцию к элементу с помощью функции готовности документа.

$(function(){ 
     document.getElementById("avg-pumping-distance").onchange = (function() { 
      ReserveFloatingPipe(); 
      ReserveSubPipe(); 
      ReserveShorePipe(); 
     }); 
    }); 

или

$(function(){ 
     $("#avg-pumping-distance").on('change',function(){ 
      ReserveFloatingPipe(); 
      ReserveSubPipe(); 
      ReserveShorePipe(); 
     }); 
    }); 

или

$(document).ready(function() { 
     document.getElementById("avg-pumping-distance").onchange = (function() { 
      ReserveFloatingPipe(); 
      ReserveSubPipe(); 
      ReserveShorePipe(); 
     }); 
    }); 

или

$(document).ready(function() { 
     $("#avg-pumping-distance").on('change',function(){ 
      ReserveFloatingPipe(); 
      ReserveSubPipe(); 
      ReserveShorePipe(); 
     }); 
    }); 
+0

Я ценю ваши отзывы, однако я все равно получаю его на работу. возможно, вы можете взглянуть на этот пример codepen и дать мне обратную связь. http://codepen.io/coryk/pen/Kzbqwo?editors=1011 –

+0

@Кори Келли, я думаю, я могу немного смутить то, что вы пытаетесь сделать здесь. Если «avg-pumping-distance» будет единственным значением, предоставленным пользователем, а остальные будут зависеть от расчетов, основанных на этом значении. Или все значения могут быть изменены пользователем и взаимозависимы друг с другом? – gmfm

Смежные вопросы