Aller au contenu

Sujets conseillés

Posté

Bonjour à tous,

J'ai un problème facilement résolvable à mon avis, mais je galère.

J'ai un form avec 2 champs, 1 ville de départ & 1 ville d'arrivée avec une redirection lorsque les 2 villes sont choisies ou une alerte si aucune ville n'est séléctionnée.

function form() {
var ville_dep = document.formulaire.ville_dep.value;
var ville_arr = document.formulaire.ville_arr.value;
if ((ville_dep=='') || (ville_arr=='')) {
alert("Veuillez indiquer les villes de départ et d\'arrivée");
}
else if {
window.location.href="formulaire.php?ivd="+ville_dep+"&iva="+ville_arr;
}

Pouvez-vous me dire ce qui ne va pas dans la fonction ci-dessus?

Merci

++

Posté (modifié)

c'est fait mais aucun changement la fonction ne marche pas... ni l'alert, ni la redirection!

Tu ne vois pas d'autres fautes dans la syntaxe?

P.S: juste ca, ca marche bien

function form() {
var ville_dep = document.formulaire.ville_dep.value;
var ville_arr = document.formulaire.ville_arr.value;
window.location.href="formulaire.php?ivd="+ville_dep+"&iva="+ville_arr;

Modifié par william_dallas
Posté

Bonjour

En fait 3 choses :

Il manque une accolade à la fin de la fonction, ensuite, il faudrait appeler la fonction autrement ("monAction" ou "MonForm") et enfin, essayez de placer le script en bas de page (avant la balise </body>). Essayez comme ça et dites nous si ça marche.

Posté

bonjour kadisbel,

je viens d'essayer tout ça mais aucun changement, j'ai bien renommer la fonction, je l'ai placée avant le </body> et l'accolade est là.

Je comprend pas...

Posté

Pourriez vous faire un copié/collé du formulaire et de la fonction dans son intégralité SVP?

Chez moi en écrivant ceci :

<body>
<form action="" method="get" name="formulaire">
<input name="ville_dep" id="ville_dep" type="text" />
<input name="ville_arr" id="ville_arr" type="text" />
<input name="" type="button" onclick="MonAction();" />
</form>
<script language="javascript">
function MonAction() {
var ville_dep = document.formulaire.ville_dep.value;
var ville_arr = document.formulaire.ville_arr.value;
if ((ville_dep=='') || (ville_arr=='')) {
alert("Veuillez indiquer les villes de départ et d\'arrivée");
}else {
window.location.href="formulaire.php?ivd="+ville_dep+"&iva="+ville_arr;
}
}
</script>
</body>

ca marche, mais ne sachant pas quel type de formulaire vous faites c'est difficile de vous aider :)

Posté

Voilà

<form method="post" enctype="multipart/form-data" name="formulaire" action="">
<table cellpadding="3" cellspacing="0">
<tr>
<td>
<select name="ville_dep" id="ville_dep">
<option value="">-- Ville de départ --</option>
<?php
$query = "select nom_ville, id_ville from ville";
$res=mysql_query($query);
while($row=mysql_fetch_array($res))
{
echo "<option value=\"".$row['id_ville']."\">".$row['nom_ville']."</option>";
}
?>

</select>
</td>
<td>
<select name="ville_arr" id="ville_arr">
<option value="">-- Ville de destination --</option>
<?php
$query = "select nom_ville, id_ville from ville";
$res=mysql_query($query);
while($row=mysql_fetch_array($res))
{
echo "<option value=\"".$row['id_ville']."\">".$row['nom_ville']."</option>";
}
?>
</select>
</td>
<td>
<a href="java script:Myform();"><input type="button" value="Go" title="" /></a>
</td>
</tr>
</table>
</form>

et la fonction :

function Myform()
{
var ville_dep = document.formulaire.ville_dep.value;
var ville_arr = document.formulaire.ville_arr.value;
if(ville_dep == '' || ville_arr == '') {
alert("Veuillez indiquer les villes de départ et d\'arrivée");
}
else {
window.location.href="formulaire.php?ivd="+ville_dep+"&iva="+ville_arr;
}

Posté

<a href="java script:Myform();"><input type="button" value="Go" title="" /></a>

Remplacez par :

<input type="button" value="Go" title="" onclick="Myform();" />

Et dites nous si cette fois ça marche :)

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...