Bonjour à tous,
Je ne suis pas développeur et je n'ai donc aucune prétention dans ce domaine que je connais avec mon regard de "WebDesigner".
Les années d'expériences et les collaborations aidants, j'arrive à "comprendre" ce que réalise un code JS.
Cependant, même si je parviens parfois à modifier du code existant pour obtenir ce que je souhaite, je n'ai aucune compétences pour le faire.
Mon problème aujourd'hui, demeure dans une page que je souhaite réaliser…
Je souhaite créer une page qui calculerai automatiquement la durée d'exposition d'une photographie quand on utilise un ou des filtres à densité neutre (ND4/8/1000/…).
Fondamentalement, le calcul est très simple :
Temps d'exposition * type du filtre = nouveau temps d'exposition

Sauf, qu'il est possible de superposer plusieurs filtres, ce qui peu donner :
Temps d'exposition * (type du filtre * "x" type de filtres) = nouveau temps d'exposition

A partir d'un JS existant je suis parvenu à bidouiller un machin, mais qui évidement ne rends pas ce que je souhaite.
D'une part, j'aimerai créer à la volée un champs "type de filtre" si la personne en veux plus d'un… puis faire en sorte que le résultat (donnée en secondes) soit convertit en JJ:mm:ss si nécéssaire…

Voici ce que donne pour le moment mon code :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
<script>
					function send() 
					{
						if(isNaN(parseFloat(document.form1.valeur_1.value) * parseFloat(document.form1.valeur_2.value) * parseFloat(document.form1.valeur_3.value)))
						{
							document.getElementById("my_id").innerHTML = "--";
						}
						else
						{
							document.getElementById("my_id").innerHTML = (parseFloat(document.form1.valeur_1.value) * parseFloat(document.form1.valeur_2.value) * parseFloat(document.form1.valeur_3.value));
 
						}
					}
				</script>
 
				<form id="form1" name="form1" method="post" action="">
 
						<label for="valeur_1">Durée d'exposition initiale</label>
						<select name="valeur_1" id="valeur_1" onchange="send()">
								<option value="0">None</option>
								<option value="0.000125">1/8000</option>
								<option value="0.00025">1/4000</option>
								<option value="0.0003125">1/3200</option>
								<option value="0.0004">1/2500</option>
								<option value="0.0005">1/2000</option>
								<option value="0.000625">1/1600</option>
								<option value="0.0008">1/1250</option>
								<option value="0.001">1/1000</option>
								<option value="0.00125">1/800</option>
								<option value="0.0015625">1/640</option>
								<option value="0.002">1/500</option>
								<option value="0.0025">1/400</option>
								<option value="0.003125">1/320</option>
								<option value="0.004">1/250</option>
								<option value="0.005">1/200</option>
								<option value="0.00625">1/160</option>
								<option value="0.008">1/125</option>
								<option value="0.01">1/100</option>
								<option value="0.02">1/50</option>
								<option value="0.016666667">1/60</option>
								<option value="0.02">1/50</option>
								<option value="0.025">1/40</option>
								<option value="0.033333333">1/30</option>
								<option value="0.04">1/25</option>
								<option value="0.066666667">1/15</option>
								<option value="0.076923077">1/13</option>
								<option value="0.1">1/10</option>
								<option value="0.125">1/8</option>
								<option value="0.16666667">1/6</option>
								<option value="0.2">1/5</option>
								<option value="0.25">1/4</option>
								<option value="0.33333333">1/3</option>
								<option value="0.4">0,4"</option>
								<option value="0.5">0,5"</option>
								<option value="0.6">0,6"</option>
								<option value="0.8">0,8"</option>
								<option value="1">1"</option>
								<option value="1.3">1,3"</option>
								<option value="1.6">1,6"</option>
								<option value="2">2"</option>
								<option value="2.5">2,5"</option>
								<option value="3.2">3,2"</option>
								<option value="4">4"</option>
								<option value="5">5"</option>
								<option value="6">6"</option>
								<option value="8">8"</option>
								<option value="10">10"</option>
								<option value="13">13"</option>
								<option value="15">15"</option>
								<option value="20">20"</option>
								<option value="25">25"</option>
								<option value="30">30"</option>
						</select>					
						<label for="valeur_2">Type de filtre ND</label>
						<select name="valeur_2" id="valeur_2" onchange="send()">
								<option value="0">None</option>
								<option value="2">ND2 (0,3) f-stop 1</option>
								<option value="4">ND4 (0,6) f-stop 2</option>
								<option value="8">ND8 (0,9) f-stop 3</option>
								<option value="16">ND16 (1,2) f-stop 4</option>
								<option value="32">ND32 (1,5) f-stop 5</option>
								<option value="64">ND64 (1,8) f-stop 6</option>
								<option value="128">ND128 (2,1) f-stop 7</option>
								<option value="256">ND256 (2,4) f-stop 8</option>
								<option value="512">ND512 (2,7) f-stop 9</option>
								<option value="1024">ND1024 (3,0) f-stop 10</option>
								<option value="2048">ND2048 (3,3) f-stop 11</option>
								<option value="4096">ND4096 (3,6) f-stop 12</option>
								<option value="8192">ND8192 (3,9) f-stop 13</option>
						</select>
						<label for="valeur_3">Type de filtre ND</label>
						<select name="valeur_3" id="valeur_3" onchange="send()">
								<option value="0">None</option>
								<option value="2">ND2 (0,3) f-stop 1</option>
								<option value="4">ND4 (0,6) f-stop 2</option>
								<option value="8">ND8 (0,9) f-stop 3</option>
								<option value="16">ND16 (1,2) f-stop 4</option>
								<option value="32">ND32 (1,5) f-stop 5</option>
								<option value="64">ND64 (1,8) f-stop 6</option>
								<option value="128">ND128 (2,1) f-stop 7</option>
								<option value="256">ND256 (2,4) f-stop 8</option>
								<option value="512">ND512 (2,7) f-stop 9</option>
								<option value="1024">ND1024 (3,0) f-stop 10</option>
								<option value="2048">ND2048 (3,3) f-stop 11</option>
								<option value="4096">ND4096 (3,6) f-stop 12</option>
								<option value="8192">ND8192 (3,9) f-stop 13</option>
						</select>						
					<p id="my_id"></p>
Merci de votre aide et de vos suggestions !