Changement d'attribut selected au chargement
Vanvan
-
Vanvan -
Vanvan -
Bonjour tout le monde,
Après de multiple consultation sur le forum de "commentcamarche.net", qui m'a de nombreuses fois sortis de l'embarras, je me decide à poster !
Explication :
Je voudrais qu'au chargement d'un formulaire html, les <option> de mon <select> ai l'attribut selected ou pas.
Sur une page HTML, je récupère une variable dans l'URL du type "www.toto.fr\formulaire.html?logiciel=5",
j'arrive a extraire le "5" de la chaine de caractère.
Mais pas à modifier mon <select selected="selected"> :
je vous montre mon source :
<script language="javascript" type="text/javascript">
<!--
var var_url = window.location.search;
var choix_logiciel = var_url.slice(10);
alert(choix_logiciel);
function selected_option (choix_logiciel)
{
/*document.getElementsByTagName("option")[nbtagname].setAttribute("selected", "selected"); 1er test marche pas*/
alert('log_'+choix_logiciel);
document.getElementById('log_'+choix_logiciel).selected = 'selected';
}
switch(choix_logiciel)
{
case '0' :
selected_option(0);
alert(choix_logiciel);
break;
case '1' :
alert('toto');
selected_option(1);
alert(choix_logiciel);
break;
case '2' :
alert('titi');
selected_option(2);
alert(choix_logiciel);
break;
case '3' :
alert('tata');
alert(choix_logiciel);
selected_option(3);
break;
case '4' :
alert('tutu');
selected_option(4);
alert(choix_logiciel);
break;
case '5' :
alert('tete');
selected_option(5);
alert(choix_logiciel);
break;
case '6' :
alert('tyty');
selected_option(6);
alert(choix_logiciel);
break;
default :
alert('logiciel n\'a pas été incrementé');
}
-->
</script>
<!-- Voila mon select -->
<select name="logiciel" id="logiciel">
<option id="log_0" >--- Séléctionner ---</option>
<option id="log_1" >toto</option>
<option id="log_2" >titi</option>
<option id="log_3" >tata</option>
<option id="log_4" >tutu</option>
<option id="log_5" >tete</option>
<option id="log_6" >tyty</option>
</select>
Je remercie enormement tout le monde de "comment ca marche" pour l'aide que vous m'avez donné, et vous remercie d'avance pour les reponses à mon post !!!
Après de multiple consultation sur le forum de "commentcamarche.net", qui m'a de nombreuses fois sortis de l'embarras, je me decide à poster !
Explication :
Je voudrais qu'au chargement d'un formulaire html, les <option> de mon <select> ai l'attribut selected ou pas.
Sur une page HTML, je récupère une variable dans l'URL du type "www.toto.fr\formulaire.html?logiciel=5",
j'arrive a extraire le "5" de la chaine de caractère.
Mais pas à modifier mon <select selected="selected"> :
je vous montre mon source :
<script language="javascript" type="text/javascript">
<!--
var var_url = window.location.search;
var choix_logiciel = var_url.slice(10);
alert(choix_logiciel);
function selected_option (choix_logiciel)
{
/*document.getElementsByTagName("option")[nbtagname].setAttribute("selected", "selected"); 1er test marche pas*/
alert('log_'+choix_logiciel);
document.getElementById('log_'+choix_logiciel).selected = 'selected';
}
switch(choix_logiciel)
{
case '0' :
selected_option(0);
alert(choix_logiciel);
break;
case '1' :
alert('toto');
selected_option(1);
alert(choix_logiciel);
break;
case '2' :
alert('titi');
selected_option(2);
alert(choix_logiciel);
break;
case '3' :
alert('tata');
alert(choix_logiciel);
selected_option(3);
break;
case '4' :
alert('tutu');
selected_option(4);
alert(choix_logiciel);
break;
case '5' :
alert('tete');
selected_option(5);
alert(choix_logiciel);
break;
case '6' :
alert('tyty');
selected_option(6);
alert(choix_logiciel);
break;
default :
alert('logiciel n\'a pas été incrementé');
}
-->
</script>
<!-- Voila mon select -->
<select name="logiciel" id="logiciel">
<option id="log_0" >--- Séléctionner ---</option>
<option id="log_1" >toto</option>
<option id="log_2" >titi</option>
<option id="log_3" >tata</option>
<option id="log_4" >tutu</option>
<option id="log_5" >tete</option>
<option id="log_6" >tyty</option>
</select>
Je remercie enormement tout le monde de "comment ca marche" pour l'aide que vous m'avez donné, et vous remercie d'avance pour les reponses à mon post !!!
A voir également:
- Changement d'attribut selected au chargement
- Changement dns - Guide
- Changement d'heure - Guide
- Changement d'écriture facebook - Guide
- Changement clavier azerty - Guide
- Changement code pin - Guide
6 réponses
Pourquoi n'utilises tu pas le php ce serait beaucoup plus facile
en nommant ton formulaire formulaire.php et
www.toto.fr\formulaire.php?logiciel=5
ensuite tu récupères par $_GET['logiciel']
en nommant ton formulaire formulaire.php et
www.toto.fr\formulaire.php?logiciel=5
ensuite tu récupères par $_GET['logiciel']
Je ne sais pas programmer en php ! j'ai pris pas mal de temps sur le javascript et la j'ai des impératifs au niveau des délais :)
comment ferais tu en php, parce que mon problème n'est pas de récupérer la valeur de "logiciel",
l'erreur du script avec Web développeur est :
Erreur : document.getElementById("log_" + choix_logiciel) is null
Fichier Source : services_support_formulaire.html?logiciel=3
Ligne : 326
suis-je obliger de me lancer dans la prog php?
comment ferais tu en php, parce que mon problème n'est pas de récupérer la valeur de "logiciel",
l'erreur du script avec Web développeur est :
Erreur : document.getElementById("log_" + choix_logiciel) is null
Fichier Source : services_support_formulaire.html?logiciel=3
Ligne : 326
suis-je obliger de me lancer dans la prog php?
He bien si tu veux aller plus loin avec ta liste déroulante, c a d récupérer ce qui a été selectionné dedans il va te falloir du php
tu ne peux pas mettre de id= dans <option il faut par contre obligatoirement value=
alors si tu mets:
dans ta page formulaire.php tu auras:
<?php if($logiciel=="0") {echo "selected";} ?> on compare le numéro de log reçu avec la value de la ligne d'<option si identique on ecrit "selected"
Si tu veux apprendre le php vas voir www.siteduzero.com
@lain
tu ne peux pas mettre de id= dans <option il faut par contre obligatoirement value=
alors si tu mets:
"www.toto.fr\formulaire.php?logiciel=5"
dans ta page formulaire.php tu auras:
<html>
<?php
//recup du logiciel dans l'url
if(isset($_GET['logiciel'])){
//si on a reçu le numero par l'url
$logiciel=$_GET['logiciel'];
}else{
// sinon valeur par defaut
$logiciel="0";
}
?>
<form name="ma_form" method="post" action="la_suite.php">
<select name="logiciel" id="logiciel">
<option value="0" <?php if($logiciel=="0") {echo "selected";} ?> >--- Séléctionner ---</option>
<option value="1" <?php if($logiciel=="1") {echo "selected";} ?> >toto</option>
<option value="2" <?php if($logiciel=="2") {echo "selected";} ?> >titi</option>
<option value="3" <?php if($logiciel=="3") {echo "selected";} ?> >tata</option>
<option value="4" <?php if($logiciel=="4") {echo "selected";} ?> >tutu</option>
<option value="5" <?php if($logiciel=="5") {echo "selected";} ?> >tete</option>
<option value="6" <?php if($logiciel=="6") {echo "selected";} ?> >tyty</option>
</select>
</form>
</html>
<?php if($logiciel=="0") {echo "selected";} ?> on compare le numéro de log reçu avec la value de la ligne d'<option si identique on ecrit "selected"
Si tu veux apprendre le php vas voir www.siteduzero.com
@lain
Je viens d'insérer ton script php dans ma page formulaire.php mais rien ne se passe,
j'ai l'impression que le code pour recuperer la valeur de "logiciel" ne fonctionne pas,
et echo "selected"; ajoute t-il l'attribut selected="selected" dans la balise <option>?
-----> parce-que quand je fais :
<option value="4" <?php echo "selected"; ?> >tutu</option>
tutu n'est pas selectionné????
j'ai l'impression que le code pour recuperer la valeur de "logiciel" ne fonctionne pas,
et echo "selected"; ajoute t-il l'attribut selected="selected" dans la balise <option>?
-----> parce-que quand je fais :
<option value="4" <?php echo "selected"; ?> >tutu</option>
tutu n'est pas selectionné????
oui tu peux mettre echo "selected='selected'";
mais ça marche qd même
par contre comment procedes tu ?
ou as tu mis le script formulaire.php ? sur ton serveur ? ton hebergeur accepte -t-il le php ?
as tu bien modifié ton lien qui l'appelle en "www...........formulaire.php?logiciel=5"
<option value="4" <?php echo "selected"; ?> >tutu</option>
tutu n'est pas selectionné????
voudrait dire que ton code php n'est pas interprété
mais ça marche qd même
par contre comment procedes tu ?
ou as tu mis le script formulaire.php ? sur ton serveur ? ton hebergeur accepte -t-il le php ?
as tu bien modifié ton lien qui l'appelle en "www...........formulaire.php?logiciel=5"
<option value="4" <?php echo "selected"; ?> >tutu</option>
tutu n'est pas selectionné????
voudrait dire que ton code php n'est pas interprété
Si tu ne peux pas en PHP essayes ça en javascript
attention pas d'id mais value dans les options et les options ne sont accessibles que par leur index
et il faut bien avoir la balise form avec le name
attention pas d'id mais value dans les options et les options ne sont accessibles que par leur index
et il faut bien avoir la balise form avec le name
<script language="javascript" type="text/javascript">
<!--
var var_url = window.location.search;
var choix_logiciel = var_url.slice(10);
alert(choix_logiciel);
function selected_option (choix_logiciel){
var nbr_options=document.form1.logiciel.length;
for(i=0;i<nbr_options;i++){
if(document.form1.logiciel.options[i].value==choix_logiciel){
document.form1.logiciel.options[i].selected=true;
}
}
}
//il faut lancer la fonction
selected_option (choix_logiciel);
</script>
<form name="form1" action="">
<select name="logiciel" value="logiciel">
<option value="0" >--- Séléctionner ---</option>
<option value="1" >toto</option>
<option value="2" >titi</option>
<option value="3" >tata</option>
<option value="4" >tutu</option>
<option value="5" >tete</option>
<option value="6" >tyty</option>
</select>
</form>
Merci Alain_42 de ton aide !
Je vais tester ca dans le weekend je te dis le resultat lundi !
Merci beaucoup c'est cool qu'il y ai des gens comme toi pour donner de l'aide à de pauvre petit developpeur comme moi :) !!!
Je vais tester ca dans le weekend je te dis le resultat lundi !
Merci beaucoup c'est cool qu'il y ai des gens comme toi pour donner de l'aide à de pauvre petit developpeur comme moi :) !!!
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Salut Alain_42,
J'ai tester le script, ça ne fonctionne pas : Erreur = document.form1 is undefined
Je vais retenter en php mais j'suis pas sur de ce que je fais !
J'ai tester le script, ça ne fonctionne pas : Erreur = document.form1 is undefined
Je vais retenter en php mais j'suis pas sur de ce que je fais !
Salut Alain_42 !!!
Victoire j'ai reussis a me depatouiller !!! :)
Voila mon script :
<script language="javascript" type="text/javascript">
var log_url = window.location.search;
var nb_log = log_url.slice(5);
var select_0 = "";
var select_1 = "";
var select_2 = "";
var select_3 = "";
var select_4 = "";
var select_5 = "";
var select_6 = "";
switch (nb_log)
{
case '0' :
var select_0 = "selected=\"selected\"";
break;
case '1' :
var select_1 = "selected=\"selected\"";
break;
case '2' :
var select_2 = "selected=\"selected\"";
break;
case '3' :
var select_3 = "selected=\"selected\"";
break;
case '4' :
var select_4 = "selected=\"selected\"";
break;
case '5' :
var select_5 = "selected=\"selected\"";
break;
case '6' :
var select_6 = "selected=\"selected\"";
break;
}
var log_option = "<select><option value=\"0\" "+select_0+" >--- Séléctionner ---</option><option value=\"1\" "+select_1+" >toto</option><option value=\"2\" "+select_2+" >tutu</option><option value=\"3\" "+select_3+" >tyty</option><option value=\"4\" "+select_4+" >tata</option><option value=\"5\" "+select_5+" >titi</option><option value=\"6\" "+select_6+" >tete</option></select>";
document.write (log_option+'');
</script>
Merci Alain_42 et a CCM.net !!!!
Victoire j'ai reussis a me depatouiller !!! :)
Voila mon script :
<script language="javascript" type="text/javascript">
var log_url = window.location.search;
var nb_log = log_url.slice(5);
var select_0 = "";
var select_1 = "";
var select_2 = "";
var select_3 = "";
var select_4 = "";
var select_5 = "";
var select_6 = "";
switch (nb_log)
{
case '0' :
var select_0 = "selected=\"selected\"";
break;
case '1' :
var select_1 = "selected=\"selected\"";
break;
case '2' :
var select_2 = "selected=\"selected\"";
break;
case '3' :
var select_3 = "selected=\"selected\"";
break;
case '4' :
var select_4 = "selected=\"selected\"";
break;
case '5' :
var select_5 = "selected=\"selected\"";
break;
case '6' :
var select_6 = "selected=\"selected\"";
break;
}
var log_option = "<select><option value=\"0\" "+select_0+" >--- Séléctionner ---</option><option value=\"1\" "+select_1+" >toto</option><option value=\"2\" "+select_2+" >tutu</option><option value=\"3\" "+select_3+" >tyty</option><option value=\"4\" "+select_4+" >tata</option><option value=\"5\" "+select_5+" >titi</option><option value=\"6\" "+select_6+" >tete</option></select>";
document.write (log_option+'');
</script>
Merci Alain_42 et a CCM.net !!!!