betux
Coordinateur
testis ...
Messages : 2 851 Inscrit le 08/10/03
Ville : lyon et parfois grenoble
Non connecté
|
|
Posté le 29 mars 2008 - 12 h 37 m 02 s |
|
|
j'ai une fonction javascript qui à la sélection d'un article me ramène le prix.
Ca marche très bien à un détail pret c'est que moi j'ai trouvé onchange mais à l'init comment on fait ? le onload il est ou ??
|
|
| |
Il faut que le hasard renverse la fourmi pour qu elle voit le ciel.
|
Woofy
Pour les bons tuyaux me demander
Messages : 26 008 Inscrit le 11/01/02
Ville : Paris / Grenoble
Non connecté
|
|
Posté le 29 mars 2008 - 13 h 47 m 21 s |
|
|
|
|
|
| |
Totalement inutile, donc completement indispensable 
|
betux
Coordinateur
testis ...
Messages : 2 851 Inscrit le 08/10/03
Ville : lyon et parfois grenoble
Non connecté
|
|
Posté le 29 mars 2008 - 14 h 25 m 45 s |
|
|
marche pas
|
|
| |
Il faut que le hasard renverse la fourmi pour qu elle voit le ciel.
|
betux
Coordinateur
testis ...
Messages : 2 851 Inscrit le 08/10/03
Ville : lyon et parfois grenoble
Non connecté
|
|
Posté le 29 mars 2008 - 14 h 35 m 17 s |
|
|
1.
2. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
3. <html xmlns="http://www.w3.org/1999/xhtml">
4. <head>
5. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
6. <title>Insertion/Modification Achat</title>
7. <link href="../style.css" rel="stylesheet" type="text/css" />
8.
9. <script type="text/javascript" language="javascript">
10.
11. /// verification si quantité
12.
13. function Verif(nForm)
14. {
15. var form_err = "Il manque : ";
16.
17.
18. var x=document.getElementById('quantite').value
19. var anum=/(^\d+$)|(^\d+\.\d+$)/
20. if (anum.test(x))
21. testresult=true
22. else{
23. testresult=false
24. form_err += "la quantité. ";
25. }
26.
27.
28. if ( form_err != "Il manque : ") {
29. alert(form_err);
30. return false;
31. }
32. else
33. {
34. return true;
35. }
36. }
37.
38. /// selection du prix lors du choix de l'article
39.
40. function ajaxFunction(){
41. var ajaxRequest; // The variable that makes Ajax possible!
42.
43. try{
44. // Opera 8.0+, Firefox, Safari
45. ajaxRequest = new XMLHttpRequest();
46. } catch (e){
47. // Internet Explorer Browsers
48. try{
49. ajaxRequest = new ActiveXObject("Msxml2.XMLHTTP");
50. } catch (e) {
51. try{
52. ajaxRequest = new ActiveXObject("Microsoft.XMLHTTP");
53. } catch (e){
54. // Something went wrong
55. alert("Your browser broke!");
56. return false;
57. }
58. }
59. }
60. // Create a function that will receive data sent from the server
61. ajaxRequest.onreadystatechange = function(){
62. if(ajaxRequest.readyState == 4){
63. var ajaxDisplay = document.getElementById('ajaxDiv');
64. ajaxDisplay.innerHTML = ajaxRequest.responseText;
65. }
66. }
67. var choix = 1;
68. var article = document.getElementById('article').value;
69. var queryString = "?article=" + article+ "&choix=" + choix;
70. ajaxRequest.open("GET", "ex_ajax.php" + queryString, true);
71. ajaxRequest.send(null);
72. }
73.
74.
75. /// calcul du prix
76.
77. function displaysum()
78. {
79. var operand1 = parseFloat(document.getElementById('quantite').value);
80. var operand2 = parseFloat(document.getElementById('prix').value);
81. var sum = 0;
82. sum = operand1 * operand2;
83. document.getElementById('targetDiv').innerHTML =
84. sum;
85. }
86.
87. </SCRIPT>
88.
89. <?php
90. include '../control.inc';
91. include 'select_achat.inc';
92. ?>
93.
94.
95. </head>
96.
97. <body>
98. <form id="form1" name="insert_achat" method="post" action="InsUpd_achat.php" onload="ajaxFunction();" onsubmit="return Verif(this);">
99.
100. <div id="container">
101.
102. <div id="header"><h1>Etablissement LATITUDE</h1></div>
103.
104. <div id="sub_header">... Le hasard et la fourmie</div>
105.
106. <div id="main_content_top"></div>
107.
108. <div id="main_content">
109.
110. <div class="content">
111. <h2>Insertion/Modification Achat</h2>
112.
113.
114.
115. <table width="200" border="0">
116. <tr>
117. <td> </td>
118. <td><label>
119. <input type="hidden" name="iid" id="iid" value="<?php echo $row["id_achat"]; ?>" />
120. </label></td>
121. </tr>
122. <tr>
123. <td>Client</td>
124. <td><label>
125. <?php
126.
127. //alimentation liste deroulante client
128.
129. $sql_select_client = "SELECT numero, nom FROM clients ORDER BY nom ASC";
130. $res_select_client = mysql_query($sql_select_client) or die ("Erreur sur la requête <i>$sql_select_client</i> : <br/>" . mysql_error());
131.
132.
133. if (mysql_num_rows($res_select_client))
134.
135. {
136. echo '<select name="client" id="client">';
137. while ($client = mysql_fetch_assoc($res_select_client))
138. {
139.
140. if ($row['id_client']==$client['numero'])
141. {
142. echo '<option value="' . $client['numero'] .'"selected>'. $client['nom'] .'</option>';
143. }
144. else
145. {
146. echo '<option value="' . $client['numero'] .'">'. $client['nom'] .'</option>';
147. }
148.
149.
150. /* if ($row['id_client']==$client['numero']) $selected = " selected=\"selected\"";
151. echo <option value=\"" . $client['numero'] . "\"$selected>" . $client['nom'] . "</option>";
152. */
153.
154. }
155. echo "</select>";
156. }
157.
158. ?>
159.
160. </label></td>
161. </tr>
162. <tr>
163. <td>Article</td>
164. <td><label>
165.
166. <?php
167.
168. $sql_select_article = "SELECT reference,nom FROM articles ORDER BY nom ASC";
169. $res_select_article = mysql_query($sql_select_article) or die ("Erreur sur la requête <i>$sql_select_article</i> : <br/>" . mysql_error());
170.
171. if (mysql_num_rows($res_select_article))
172.
173. {
174.
175. echo '<select name="article" id="article" onchange="ajaxFunction()">';
176. while ($article = mysql_fetch_assoc($res_select_article))
177. {
178.
179. //alimentation liste deroulante article
180.
181.
182. if ($row['id_article']==$article['reference'])
183. {
184. echo '<option value="' . $article['reference'] .'"selected>'. $article['nom'] .'</option>';
185. }
186. else
187. {
188. echo '<option value="' . $article['reference'] .'">'. $article['nom'] .'</option>';
189. }
190. }
191. echo "</select>";
192. }
193.
194. ?>
195.
196. </label></td>
197. </tr>
198. <tr>
199. <td>Prix Unitaire</td>
200. <td><div id='ajaxDiv'></div></td>
201. </tr>
202. <tr>
203. <td>Quantité</td>
204. <td><label>
205. <input type="text" name="quantite" id="quantite" value="<?php echo $row["quantite"]; ?>" size="4" maxlength="4"/>
206. </label></td>
207. </tr>
208. <tr>
209. <td>Prix Total</td>
210. <td><div id="targetDiv"></div></td>
211. </tr>
212. <tr>
213. <td><input type="button" name="calculate" id="calculate" value="Calculer" onclick="displaysum();"/></td>
214. <td><input type="submit" name="save" id="save" value="Enregistrer" onclick="return Verif(this);"/></td>
215. </tr>
216. </table>
217.
218.
219. </div>
220.
221. <div class="menu">
222.
223. <?php
224.
225. /* menu */
226. include '../menu.inc';
227. ?>
228.
229. </div>
230.
231. <div id="clear"></div>
232.
233. </div>
234.
235. <div id="main_content_bottom">
236. </div>
237.
238. <div id="footer">
239. <?php
240. session_start();
241. echo $_SESSION['who'];
242. ?>
243. </div>
244.
245. </div>
246.
247. </form>
248. </body>
249. </html>
250.
|
|
| |
Il faut que le hasard renverse la fourmi pour qu elle voit le ciel.
|
moinal
Messages : 122 Inscrit le 12/03/05
Ville : Aix en provence
Non connecté
|
|
Posté le 29 mars 2008 - 18 h 20 m 33 s |
|
|
<body onLoad="ajaxFunction();" >
Ou, en mieux car pas de js dans le body :
window.onload = function() {
}
Tu peux aussi utiliser une librairie qui gère le ondomready, ça évite d'attendre que toute la page soit chargée (mais seulement le DOM) avant de déclencher le bazar (avec mootools, jquery ça doit être intégré par exemple)
|
|
| |
|
betux
Coordinateur
testis ...
Messages : 2 851 Inscrit le 08/10/03
Ville : lyon et parfois grenoble
Non connecté
|
|
Posté le 30 mars 2008 - 10 h 19 m 20 s |
|
|
hello moinal,
je viens de passer mes pages au w3c et en fait en xhtml strict il n'y a pas de onload ds le body.
Donc j'optionne la deuxième option.
merci.
|
|
| |
Il faut que le hasard renverse la fourmi pour qu elle voit le ciel.
|
betux
Coordinateur
testis ...
Messages : 2 851 Inscrit le 08/10/03
Ville : lyon et parfois grenoble
Non connecté
|
|
|
| |
Il faut que le hasard renverse la fourmi pour qu elle voit le ciel.
|
betux
Coordinateur
testis ...
Messages : 2 851 Inscrit le 08/10/03
Ville : lyon et parfois grenoble
Non connecté
|
|
Posté le 30 mars 2008 - 19 h 08 m 26 s |
|
|
ça marche mais en fait il faut le mettre à la fin de son javascript.
|
|
| |
Il faut que le hasard renverse la fourmi pour qu elle voit le ciel.
|