IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

HTML Discussion :

Optimisation select form


Sujet :

HTML

  1. #1
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2011
    Messages
    40
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2011
    Messages : 40
    Par défaut Optimisation select form
    Bonjour, je debute et j'aurai voulu savoir comment je pourrai optimiser cela :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    	Sélectionnez vos numéros de semaines de disponibilitées :<br/><br/>
    	<select class="ui-multiselect ui-widget ui-state-default ui-corner-all" id="dureeSemaines">
    	<option value="1">1</option>
    	<option value="2">2</option>
    	<option value="3">3</option>
    	<option value="4">4</option>
    	<option value="5">5</option>
    	<option value="6">6</option>
    	<option value="7">7</option>
    	<option value="8">8</option>
    	<option value="9">9</option>
    	<option value="10">10</option>
    	<option value="11">11</option>
    	<option value="12">12</option>
    	<option value="13">13</option>
    	<option value="14">14</option>
    	<option value="15">15</option>
    	<option value="16">16</option>
    	<option value="17">17</option>
    	<option value="18">18</option>
    	<option value="19">19</option>
    	<option value="20">20</option>
    	<option value="21">21</option>
    	<option value="22">22</option>
    	<option value="23">23</option>
    	<option value="24">24</option>
    	<option value="25">25</option>
    	<option value="26">26</option>
    	<option value="27">27</option>
    	<option value="28">28</option>
    	<option value="29">29</option>
    	<option value="30">30</option>
    	<option value="31">31</option>
    	<option value="32">32</option>
    	<option value="33">33</option>
    	<option value="34">34</option>
    	<option value="35">35</option>
    	<option value="36">36</option>
    	<option value="37">37</option>
    	<option value="38">38</option>
    	<option value="39">39</option>
    	<option value="40">40</option>
    	<option value="41">41</option>
    	<option value="42">42</option>
    	<option value="43">43</option>
    	<option value="44">44</option>
    	<option value="45">45</option>
    	<option value="46">46</option>
    	<option value="47">47</option>
    	<option value="48">48</option>
    	<option value="49">49</option>
    	<option value="50">50</option>
    	<option value="51">51</option>
    	<option value="52">52</option>
    	</select>
    avec une boucle ? oui mais comment faire ?

  2. #2
    Membre chevronné
    Femme Profil pro
    Développeur Java
    Inscrit en
    Décembre 2009
    Messages
    236
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Finance

    Informations forums :
    Inscription : Décembre 2009
    Messages : 236
    Par défaut
    On ne peux pas boucler en html, c'est un langage de balise. Si tu veux automatiser cela il te faut passer par un langage de script tel que php.

  3. #3
    Membre chevronné Avatar de hariman
    Homme Profil pro
    Développeur Java, Android
    Inscrit en
    Janvier 2008
    Messages
    200
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Ile Maurice

    Informations professionnelles :
    Activité : Développeur Java, Android
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2008
    Messages : 200
    Par défaut
    Utilise javascript :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    Sélectionnez vos numéros de semaines de disponibilitées :<br/><br/>
    	<select class="ui-multiselect ui-widget ui-state-default ui-corner-all" id="dureeSemaines">
    	</select>
     
    <script>
            for (i = 1; i <= 52; i++)
                    document.getElementById("dureeSemaines").insertAdjacentHTML("beforeEnd", "<option value='"+i+"'>"+i+"</option>");
    </script>

  4. #4
    Rédacteur

    Avatar de Torgar
    Homme Profil pro
    Développeur Web
    Inscrit en
    Août 2007
    Messages
    2 334
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Août 2007
    Messages : 2 334
    Par défaut
    Bonjour,

    C'est une question bête, mais pourquoi vouloir optimiser ça ?
    Je ne suis pas schizophrène, nous sommes unanime !!!

    ► Pensez à la balise code et au CODE HTML GENERE !!!!
    ► Au si c'est le cas et au à ceux qui vous ont aidé.
    Vous souhaitez participer aux rubriques CSS et (X)HTML ? Contactez-nous !

    Créer des colonnes de même hauteur en CSS
    Glossaire CSS
    Les bordures en CSS3
    Les transitions en CSS3

  5. #5
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Billets dans le blog
    20
    Par défaut
    Citation Envoyé par Torgar
    C'est une question bête, mais pourquoi vouloir optimiser ça ?
    Ben oui... quel est l'intérêt, parce qu'au final, tu ne pourras jamais faire en sorte que toutes les options soient affichées dans la source... il n'y a rien à optimiser
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  6. #6
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2011
    Messages
    40
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2011
    Messages : 40
    Par défaut
    Bonjour,

    A la base c'etait pour réduire le nombre de ligne de code.

    j'ai utilisé le php en faisant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <select class="ui-selectmenu ui-widget ui-state-default ui-corner-all ui-selectmenu-popup" id="minutesMatin">
    <?$i = 0; while($i <= 55){?>
    <option value="<?echo $i;?>"><?echo $i; $i = $i+5; ?></option>
    <?}?>
    et a la fin j'ai bien ma liste deroulante avec les valeurs voulu

    Merci pour vos reponses

  7. #7
    Rédacteur

    Avatar de Torgar
    Homme Profil pro
    Développeur Web
    Inscrit en
    Août 2007
    Messages
    2 334
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Août 2007
    Messages : 2 334
    Par défaut
    Citation Envoyé par soryo Voir le message
    Bonjour,

    A la base c'etait pour réduire le nombre de ligne de code.

    j'ai utilisé le php en faisant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <select class="ui-selectmenu ui-widget ui-state-default ui-corner-all ui-selectmenu-popup" id="minutesMatin">
    <?$i = 0; while($i <= 55){?>
    <option value="<?echo $i;?>"><?echo $i; $i = $i+5; ?></option>
    <?}?>
    et a la fin j'ai bien ma liste deroulante avec les valeurs voulu

    Merci pour vos reponses
    Réduire le nombre de ligne ne signifie aucunement une optimisation, surtout dans ton cas.

    Parce que de

    1. ton code n'en est pas plus clair, bien au contraire. A ce sujet : $i += 5; serait plus pratique à $i = $i + 5;
    2. ton temps d'exécution s'allonge, certes, c'est infiniment petit, mais répété....
    Je ne suis pas schizophrène, nous sommes unanime !!!

    ► Pensez à la balise code et au CODE HTML GENERE !!!!
    ► Au si c'est le cas et au à ceux qui vous ont aidé.
    Vous souhaitez participer aux rubriques CSS et (X)HTML ? Contactez-nous !

    Créer des colonnes de même hauteur en CSS
    Glossaire CSS
    Les bordures en CSS3
    Les transitions en CSS3

  8. #8
    Expert confirmé
    Avatar de Auteur
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    7 660
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 7 660
    Par défaut
    Citation Envoyé par hariman Voir le message
    Utilise javascript :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    Sélectionnez vos numéros de semaines de disponibilitées :<br/><br/>
    	<select class="ui-multiselect ui-widget ui-state-default ui-corner-all" id="dureeSemaines">
    	</select>
     
    <script>
            for (i = 1; i <= 52; i++)
                    document.getElementById("dureeSemaines").insertAdjacentHTML("beforeEnd", "<option value='"+i+"'>"+i+"</option>");
    </script>
    insertAdjacentHTML est, d'après mes recherches, uniquement pour IE...
    De plus, quand il s'agit d'intégrer dans une page des éléments HTML on utilise des fonctions DOM.

  9. #9
    Membre Expert
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 493
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 493
    Billets dans le blog
    1
    Par défaut
    Pour satisfaire ma curiosité, pourquoi $i += 5; ? Moi, je me serais contenté de $i++;

  10. #10
    Rédacteur

    Avatar de Torgar
    Homme Profil pro
    Développeur Web
    Inscrit en
    Août 2007
    Messages
    2 334
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Août 2007
    Messages : 2 334
    Par défaut
    Citation Envoyé par laurentSc Voir le message
    Pour satisfaire ma curiosité, pourquoi $i += 5; ? Moi, je me serais contenté de $i++;
    Je pense que se sont des erreurs de frappes (que j'ai répété ).

    Et en allant dans ce sens, pourquoi jusqu'à 55 et non 52 ?
    Il n'y a que 52 semaines dans une année.
    Je ne suis pas schizophrène, nous sommes unanime !!!

    ► Pensez à la balise code et au CODE HTML GENERE !!!!
    ► Au si c'est le cas et au à ceux qui vous ont aidé.
    Vous souhaitez participer aux rubriques CSS et (X)HTML ? Contactez-nous !

    Créer des colonnes de même hauteur en CSS
    Glossaire CSS
    Les bordures en CSS3
    Les transitions en CSS3

  11. #11
    Membre Expert
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 493
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 493
    Billets dans le blog
    1
    Par défaut
    Oui, merci, et tu as raison pour le 55, sachant que le code à optimiser s'arrête à 52 ainsi que la solution en js...

  12. #12
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Billets dans le blog
    20
    Par défaut
    Je pense qu'il est passé des numéros de semaines à des minutes sélectionnables de 5 en 5

    Sinon, je suis bien d'accord avec Torgar, certes, une boucle PHP permet de limiter le nombre de lignes du fichier PHP, mais pas celles du fichier HTML généré.
    D'autre part, cela oblige le serveur à interpréter le code PHP au lieu de se contenter de renvoyer un contenu HTML, on est loin d'une optimisation !
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  13. #13
    Membre Expert
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 493
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 493
    Billets dans le blog
    1
    Par défaut
    Je pense qu'il est passé des numéros de semaines à des minutes sélectionnables de 5 en 5
    Même sélectionnable de 5 en 5, sachant que dans une semaine, il y a 10080 minutes, ça fait encore 2016 possibilités ; donc ça me paraît un peu beaucoup
    et sinon, même si passer en PHP, ça n'optimise pas vraiment, ça aurait été mon réflexe aussi (et en javascript, ça ne doit pas ralentir...)

  14. #14
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Billets dans le blog
    20
    Par défaut
    Si tu lis son code, tu pourras te rendre compte qu'il s'agit des minutes dans une heure, pas dans une semaine

    Quant à le faire en JavaScript, ça n'a absolument aucun intérêt...
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  15. #15
    Rédacteur

    Avatar de Torgar
    Homme Profil pro
    Développeur Web
    Inscrit en
    Août 2007
    Messages
    2 334
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Août 2007
    Messages : 2 334
    Par défaut
    Et je rajouterai qu'il n'y aucun intérêt à utiliser une procédure coûteuse en ressource serveur (php) ou client (javascript) pour afficher quelque chose d'apparamment statique.

    A la limite, se servir de ce code pour générer la ou les listes <select></select> et les inscrire en "dur" dans ta page pourquoi pas. Tant qu'à avoir programmé ça, autant s'en servir ^^

    Combien de listes as-tu au total et quelles sont-elles ?
    Je ne suis pas schizophrène, nous sommes unanime !!!

    ► Pensez à la balise code et au CODE HTML GENERE !!!!
    ► Au si c'est le cas et au à ceux qui vous ont aidé.
    Vous souhaitez participer aux rubriques CSS et (X)HTML ? Contactez-nous !

    Créer des colonnes de même hauteur en CSS
    Glossaire CSS
    Les bordures en CSS3
    Les transitions en CSS3

  16. #16
    Membre Expert
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 493
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 493
    Billets dans le blog
    1
    Par défaut
    Si tu lis son code, tu pourras te rendre compte qu'il s'agit des minutes dans une heure, pas dans une semaine
    Oui, d'ailleurs, ça explique le 55...
    Quant à le faire en JavaScript, ça n'a absolument aucun intérêt...
    Si, celui-là :
    A la limite, se servir de ce code pour générer la ou les listes <select></select> et les inscrire en "dur" dans ta page pourquoi pas

Discussions similaires

  1. smooth scroll & menu <select> (form)
    Par ethos2.0 dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 25/10/2009, 18h59
  2. form.select() / form.collection_select()
    Par barnoufal dans le forum Ruby on Rails
    Réponses: 2
    Dernier message: 20/02/2008, 14h57
  3. Optimisation : Select Into ou Create Table?
    Par Baquardie dans le forum Langage SQL
    Réponses: 1
    Dernier message: 31/07/2007, 15h12
  4. Optimiser SELECT DISTINCT
    Par Alfador dans le forum Requêtes et SQL.
    Réponses: 2
    Dernier message: 21/06/2007, 14h52
  5. [Optimisation] SELECT avant un DELETE (base 10g)
    Par macben dans le forum Oracle
    Réponses: 2
    Dernier message: 23/05/2006, 17h42

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo