Dynamiczne wczytywanie danych z kilku pól

0

Witam! Mam formularz z kilkunastoma polami, gdzie użytkownik wpisuje dane z klawiatury lub wybiera opcje z <select>. Z kilku z tych pól warości mają zostać pobrane do funkcji, gdzie zostaną na nich obliczenia a wyniki tych obliczeń mają zostać wyświetlone w kilku innych polach formularza. Wszystko ma się dziać na bieżąco, przed "wysłaniem" formularza(submit).
Wczytywanie danych działa, ale..nijak nie jestem w stanie przekazać ich do zmiennej poza funkcją wczytującą. Próbowałam przez array'a tzn po wczytaniu dodać do arraya a potem wyświetlić w innym miejscu skryptu i..nic! Gdybym miała wczytywać dane tylko z jednego pola, nie byłoby problemu, ale ponieważ mam tych pól kilka i do obliczeń potrzebuję danych z kilku, muszę jakoś te dane przekazać poza funkcje wczytujące. Proszę o pomoc

Przykładowe pola:

	<div id="mres-form17">Rabat: <input class="input_res_nr" type="number" name="rabat" id="rabat" size="60" placeholder = "0" value="0"></input> <select name="rabatj" id="rabatj"  style="width:50px">
  <option value="%">%</option>
<option value="zł">zł</option></select></div>

Funkcja wczytująca dane(jedna z kilku w jQuery(document).ready(function() { ) :

 

var $array = [];
jQuery(document).ready(function() {

	    var rabat ="";
	var rabatj ="";
	var rabatp = "";
	 

jQuery('#rabat').on('input', function(){
	 rabat = jQuery(this).val();	

	$array[0]=rabat;
	//jQuery('#other').val($array[0]);	

	  }); 	
//rabatp=jQuery('#rabatp').val();
         
rabatp=$array[0];
jQuery('#other').val(rabatp);	

  }); 	

0

Nie wiem czy dobrze rozumiem problem.

masz sobie pola i po każdej zmianie jednej z wartości chcesz robić na nich jakieś obliczenia? np...

<input id="rabat1" />
<input id="rabat2" />
<input id="rabat3" />

<input id="other"/>

jquery

$('#rabat1, #rabat2, #rabat3').change(function() { //jesli nastapi zmiana ktoregos z tych pol to pobierz wartosci wszystkich pol
//i zrob obliczenia 
 var rabatJeden = $('#rabat1').val();
 var rabatDwa = $('#rabat2').val();
 var rabatTrzy = $('#rabat3').val();

//jesli ktores puste, nic nie rob else oblicz i wstaw wynik gdzies tam
//obliczenia var wynikObliczen = rabatDwa*rabatJeden-rabatTrzy;

$('#other').val(wynikObliczen);

});

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.