Calcul dynamique dans un formulaire à l'aide de jquery

rustaflyx Messages postés 23 Date d'inscription vendredi 4 mai 2012 Statut Membre Dernière intervention 12 mars 2021 - 18 juin 2013 à 14:16
cs_AlexN Messages postés 694 Date d'inscription lundi 5 décembre 2005 Statut Membre Dernière intervention 8 janvier 2014 - 18 juin 2013 à 16:05
Bonjour la communauté, je suis un débutant en jquery et je suis dans une impasse depuis un bout de temps. Je souhaite effectuer des calculs avec les données contenues dans les champs d'un formulaire à l'aide de jquery et faire en sorte que les résultats s'aftichent automatiquement au fur et à mesure que les données sont saisies. J'ai besoin que quelqu'un examine mon code que voici et m'en propose une correction. Merci d'avance
Voici le code:

$(document).ready(function(){
$('#donne').each(function(){ //selection du formulaire
$(this).find("tr#page3 input").on('keyup', function(){
var tsec = parseFloat($('#donne').find('#sec').val());//récupération des valeurs qui serviront de données de calcul
var	moui = parseFloat($('#donne').find('#moui').val());
var	t12 = parseFloat($('#donne').find('#t12').val());
var	tbaro = parseFloat($('#donne').find('#tbaro').val());
var	pres = parseFloat($('#donne').find('#pres').val());


var corins = 0.14;//json.corins,//correction instrumentale
z = 246; //json.altitudestation,//altitude de la station
lat = 9.333;//json.lat;//latitude de la station


var rad = lat*2*Math.PI/360;


var gravite_mer = 9.80616*(1 - 0.0026373*Math.cos(2*rad) + 0.0000059*Math.pow(Math.cos(2*rad), 2));


var gravite = gravite_mer - (0.000003086*z);
var prestat = (pres*0.1 + corins)*((1 + 0.0000184*tbaro*0.1)/(1 + 0.0001818*tbaro*0.1))*(gravite/9.80665);


var t = (tsec + t12)/20;

var i = 6.1078*Math.pow(10,((7.63*moui*0.1)/(241.9 + moui*0.1)));
var ew = 6.1078*Math.pow(10,((7.5*tsec*0.1)/(241.9 + tsec*0.1)));//calcul de la tension de vapeur saturante
var e = i-(0.00079*prestat*(tsec - moui)*0.1); //calcul de la tension partielle de vapeur
var td = (241.9*Math.log(e/6.1078))/(7.63*Math.log(10)-Math.log(e/6.1078));//calcul de la température du point de rosée
var u = (100*e)/ew;//calcul de l'humidité
// $rw = (0.622*$ew)/($prestat-$ew);
// $r = (0.622*$e)/($prestat-$e);

var hp = (1/9.8)*(gravite_mer - 0.000003086*z/2)*z;
var m = Math.pow(10, (Math.log(prestat)/Math.log(10) + (0.0148275*hp)/(t + 273.15 + (0.0065/2)*hp + 0.12*e)));

td=Math.round(td*10)/10;
u=Math.round(u);
e=Math.round(e*10)/10;
t=Math.round(t*10)/10;

//remplissage les champs de resultat

$('#donne').find('#td').text(td);
$('#donne').find('#hum').text(u);
$('#donne').find('#tens').text(e);
$('#donne').find('#t_12').text(t);


prestat=Math.round(prestat*10)/10;
m=Math.round(m*10)/10;
$('#donne').find('#pstat').text(prestat);
$('#donne').find('#pmer').text(m);

});	

});	
});

LE MEC LE PLUS INC

1 réponse

cs_AlexN Messages postés 694 Date d'inscription lundi 5 décembre 2005 Statut Membre Dernière intervention 8 janvier 2014 19
18 juin 2013 à 16:05
??
Parce qu'en plus de te proposer des corrections, il faut qu'on devine ce qui ne fonctionne pas ?
Il faut aussi deviner s'il y a eu une erreur et deviner le message d'erreur que tu as pu lire sur ta console ?
C'est la loose quand même.
0
Rejoignez-nous