[AJAX] xmlhttprequest et firefox
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:
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
| 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:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
|
<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:
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
| <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:
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
| <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:
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
| <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> |