A voir également:
- Problème avec javascript
- Telecharger javascript - Télécharger - Langages
- Javascript void 0 c'est quoi ✓ - Forum Réseaux sociaux
- Javascript echo ✓ - Forum PHP
- Exercice calculatrice en javascript ✓ - Forum Javascript
- Retour à la ligne javascript ✓ - Forum Javascript
4 réponses
Atropa
Messages postés
1940
Date d'inscription
mercredi 25 juin 2008
Statut
Membre
Dernière intervention
11 mai 2014
274
18 mars 2010 à 01:30
18 mars 2010 à 01:30
bonsoir,
tu as oublié des accolade, et je ne suis pas sur que location fonctionne comme ça.
tu as oublié des accolade, et je ne suis pas sur que location fonctionne comme ça.
function direct(ch) { if (ch=='website') { alert ("la valeur de ch est"); location.href='website.php' } else if (ch=='email') location.href='email.php' }
Salut,
C'est le bordel avec JS et les boutons radio car ils retournent un tableau. Plutôt que de faire une boucle, une solution peut être pas la plus optimale mais tout autant efficace : ajoute des id dans tes input et passe par la fonction JS document.getElementById().checked. Si la fonction retourne true, c'est que l'input est checké, sinon, non.
Fonction JS :
Code HTML :
C'est le bordel avec JS et les boutons radio car ils retournent un tableau. Plutôt que de faire une boucle, une solution peut être pas la plus optimale mais tout autant efficace : ajoute des id dans tes input et passe par la fonction JS document.getElementById().checked. Si la fonction retourne true, c'est que l'input est checké, sinon, non.
Fonction JS :
function redir() { if(document.getElementById("website").checked) document.location.replace("website.php"); else if(document.getElementById("email").checked) document.location.replace("email.php"); }
Code HTML :
<form name="form" > <input name="a" type="radio" id="website" value="website" />Site web<br /> <input name="a" type="radio" id="email" value="email" />E-mail Marketing<br /> <input name="a4" type="button" value="Suivant" onclick="redir()"/> </form>
Atropa
Messages postés
1940
Date d'inscription
mercredi 25 juin 2008
Statut
Membre
Dernière intervention
11 mai 2014
274
18 mars 2010 à 07:23
18 mars 2010 à 07:23
ou mieux tu n'utilise pas de javascript pour un truc comme ça !
tu peux simplement faire une include en php sur la page qui réceptionne ton formulaire...
reception.php
de cette manière celui qui n'utilise pas le javascript peut quand même utiliser ton code.
le problème en utilisant un formulaire plutôt qu'un lien c'est que tes pages ne seront pas référencées.
et si l'allure des url te sont importante tu peux remplacer action="reception.php" par action=""
mettre les conditions en haut de ta page.php qui contient ton formulaire et terminer la condition par un exit().
comme ça :
un petit url rewriting et ton url ressemble à ce que tu veux et c'est sans problème de compatibilité du au javascript
tu peux simplement faire une include en php sur la page qui réceptionne ton formulaire...
<form method="get" action="reception.php"> <input name="a" type="radio" value="website" />Site web <br /> <input name="a" type="radio" value="email" />E-mail Marketing <br /> <input type="submit" value="Suivant" /> </form>
reception.php
<?php if(!empty($_GET['a'])) { if($_GET['a'] == 'website') include('website.php'); else if($_GET['a'] == 'email') include('email.php'); } ?>
de cette manière celui qui n'utilise pas le javascript peut quand même utiliser ton code.
le problème en utilisant un formulaire plutôt qu'un lien c'est que tes pages ne seront pas référencées.
et si l'allure des url te sont importante tu peux remplacer action="reception.php" par action=""
mettre les conditions en haut de ta page.php qui contient ton formulaire et terminer la condition par un exit().
comme ça :
<?php if(!empty($_GET['a'])) { if($_GET['a'] == 'website') include('website.php'); else if($_GET['a'] == 'email') include('email.php'); exit(); } ?> <form method="get" action=""> <input name="a" type="radio" value="website" />Site web <br /> <input name="a" type="radio" value="email" />E-mail Marketing <br /> <input type="submit" value="Suivant" /> </form>
un petit url rewriting et ton url ressemble à ce que tu veux et c'est sans problème de compatibilité du au javascript