athome | Bonjour, je viens exposer mon soucis ici
tout d'abord, je travail sur un formulaire, un 2eme menu déroulant dépendant du 1er et un 3eme dépendant du 2sd, il fonctionne très bien, voir les pages ci-dessous, mais il ne fonctionne que sous IE8, pas sous FF 3.6.10 !
J'ai cherché sur le web et cela proviendrait de xmlhttprequest voir du bouton submit...
Je suis débutant en php/mysql et pas de notion en java, j'aimerais des conseils sur mon problème, voir une solution
voici les pages dont vous auriez besoin :
ajax.js
Code :
- function ajax(strthis)
- {
- var param = strthis.value;
- var unite = document.getElementById("unite" ).options[document.getElementById("unite" ).selectedIndex].value;
- $("#tr_codedial" ).empty();
- $.ajax
- (
- {
- type: "POST",
- url: "select_codedial.php",
- data: "var="+param,
- success:
- function(msg)
- {
- $("#tr_codedial" ).append("<td><div align='right'>Code Dialogue :</div></td><td><div align='left'>"+ msg +"</div></td>" );
- }
- }
- );
- }
- function ajax2(strthis)
- {
- var param = strthis.value;
- var intitule = document.getElementById("intitule" ).options[document.getElementById("intitule" ).selectedIndex].value;
- $("#tr_intitule" ).empty();
- $.ajax
- (
- {
- type: "POST",
- url: "select_intitule.php",
- data: "var="+param,
- success:
- function(msg)
- {
- $("#tr_intitule" ).append("<td><div align='right'>Intitulé Code Dialogue :</div></td><td><div align='left'>"+ msg +"</div></td>" );
- }
- }
- );
- }
|
form1.php
Code :
- <script type="text/javascript" src="jquery.js"></script>
- <script type="text/javascript" src="ajax.js"></script>
- <form method="POST" action="valide1.php" name="caapp">
- <tr id='tr_affaire' align="center">
- <td><div align="right">Service : </div></td>
- <td><div align="left"><?php include('select_unite.php')?></div></td>
- </tr>
- <tr id='tr_codedial'>
- <td><div align="right">Code Dialogue : </div></td>
- <td><div align="left" id='tr_codedial'><?php include('select_codedial.php')?></div></td>
- </tr>
- <tr id='tr_intitule'>
- <td><div align="right">Intitulé Code Dialogue : </div></td>
- <td><div align="left" id='tr_intitule'><?php include('select_intitule.php')?></div></td>
- </tr>
- <input type="submit" value="Envoyer" />
- </form>
|
select_unite.php
Code :
- <HEAD>
- <script type="text/javascript" src="jquery.js"></script>
- <script type="text/javascript" src="ajax.js"></script>
- </HEAD>
- <BODY>
- <select id='unite' name='unite' onChange="ajax(this)">
- <option value='void_affaire'>-</option>
- <?php
- include("../connexion.php" );
-
-
-
- $query = "SELECT DISTINCT unite FROM codedial ORDER BY unite ASC";
- $rq = mysql_query($query) or die(mysql_error());
-
- while ($row=mysql_fetch_array($rq, MYSQL_ASSOC))
- {
- $unite = $row["unite"];
- echo "<option value='$unite'>$unite</option>";
- }
- mysql_close();
- ?>
- </select>
- </BODY>
|
select_codedial.php
Code :
- <HEAD>
- <script type="text/javascript" src="jquery.js"></script>
- <script type="text/javascript" src="ajax.js"></script>
- </HEAD>
- <BODY>
- <select id='codedial' name='codedial' onChange="ajax2(this)">
- <option value='void_localisation'>-</option>
- <?php
- include("../connexion.php" );
-
- $var=$_POST['var'];
-
- $query = "SELECT DISTINCT codedial FROM codedial WHERE unite='$var' ORDER BY codedial ASC";
- $rq = mysql_query($query) or die(mysql_error());
- while ($row=mysql_fetch_array($rq, MYSQL_ASSOC))
- {
- $codedial = $row["codedial"];
- echo "<option value='$codedial'>$codedial</option>";
- }
- mysql_close();
- ?>
- </select>
- </BODY>
|
select_intitule.php
Code :
- <HEAD>
- <script type="text/javascript" src="jquery.js"></script>
- <script type="text/javascript" src="ajax.js"></script>
- </HEAD>
- <BODY>
- <select id='intitule' name='intitule'>
- <option value='void_localisation'>-</option>
- <?php
- include("../connexion.php" );
-
- $var=$_POST['var'];
-
- $query = "SELECT DISTINCT intitule FROM codedial WHERE codedial='$var' ORDER BY intitule ASC";
- $rq = mysql_query($query) or die(mysql_error());
- while ($row=mysql_fetch_array($rq, MYSQL_ASSOC))
- {
- $intitule = $row["intitule"];
- echo "<option value='$intitule'>$intitule</option>";
- }
- mysql_close();
- ?>
- </select>
- </BODY>
|
Message édité par athome le 20-09-2010 à 20:24:00
|