Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2716 connectés 

  FORUM HardWare.fr
  Programmation
  HTML/CSS

  Recherche de variable

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Recherche de variable

n°1189922
drake-
All doomed
Posté le 01-09-2005 à 21:26:45  profilanswer
 

Salut à vous!
Je cherche une variable me permetant de verfier plusieur champs d'un formulaire (pour cette page par exemple).
En gros une fonction qui m'eviterais de me taper 36 "if"
 
Merci d'avance  :jap:

mood
Publicité
Posté le 01-09-2005 à 21:26:45  profilanswer
 

n°1190120
fastclemmy
(re-)Dictateur en plastique
Posté le 02-09-2005 à 05:01:44  profilanswer
 

Fais une boucle !
 

Code :
  1. var lesInputs = document.getElementsByTagName("input" );
  2. for (var i=0; i<lesInputs.length; i++) {
  3.    if(lesInputs[i]).value == "" ) {
  4.      alert("Remplis tous les champs tête de pioche" );
  5.    }
  6. }


 
Code non testé, mais tu vois l'idée...

n°1190139
j_lecruel
☀ ☁ ☂
Posté le 02-09-2005 à 09:13:52  profilanswer
 

Peut-être serait-il bon d'en faire une fonction et d'ajouter un return dans le for sinon tu vas te retrouver avec autant que boites de message que de champs non remplis.
 
 

Code :
  1. function check_form() {
  2.   var lesInputs = document.getElementsByTagName("input" );
  3.   for (var i=0; i<lesInputs.length; i++) {
  4.      if(lesInputs[i]).value == "" ) {
  5.        alert("Remplis tous les champs tête de pioche" );
  6.        return false;
  7.      }
  8.   }
  9.   return true;
  10. }


 
Après tu n'as qu'à appeler ta fonction lors de la validation du formulaire :  
 

Code :
  1. <form action="..." method="..." onsubmit="return(check_form());" >


Message édité par j_lecruel le 02-09-2005 à 09:14:11

---------------
♈ ♋ ♌ ♍ ♎ ♏ - Agora Fidelio | Galerie d'art Toulousaine
n°1190723
drake-
All doomed
Posté le 02-09-2005 à 17:04:28  profilanswer
 

Je debut et je n'arrive pas à apliquer vos conseils dans mon formulaire. Un petit coup de pouce siouplé  :jap:  


Message édité par drake- le 06-09-2005 à 18:04:03
n°1193434
drake-
All doomed
Posté le 06-09-2005 à 18:05:22  profilanswer
 

up

n°1193475
j_lecruel
☀ ☁ ☂
Posté le 06-09-2005 à 18:44:31  profilanswer
 

Envoie ton code...


---------------
♈ ♋ ♌ ♍ ♎ ♏ - Agora Fidelio | Galerie d'art Toulousaine
n°1193608
drake-
All doomed
Posté le 06-09-2005 à 21:22:29  profilanswer
 

c'est pour cette page http://mgteam.free.fr/MLT/Shaka/Inscription.html
Merci de ton aide :jap:

n°1193626
masklinn
í dag viðrar vel til loftárása
Posté le 06-09-2005 à 21:49:09  profilanswer
 


  • Les tableaux sont inutiles (avec des labels, on peut taper son texte en cliquant sur le titre du champ, s'mieux) surtout pour une page aussi simple
  • Ajoute un élément permettant de savoir que le champ est obligatoire, je verrais bien un 'class="required"' sur chaque "input" obligatoire.
  • Ce qui permet de faire un JS tout con, du type

function checkRequiredInputs() {
    var validForm = true;
    var inputs = document.getElementsByTagName('INPUT');
    for(var i=inputs.length-1; i>=0; --i) {
        inputs[i].style.border = "";
        if(inputs[i].className.indexOf("required" ) != -1 && inputs[i].value=="" ) {
            inputs[i].style.border="2px solid red";
            validForm = false;
        }
    }
    return validForm;
}


testé sous Firefox en vitesse, fonctionne :o
 
Cette fonction:

  • Encadre en rouge les champs obligatoires non remplis (normalement [:pingouino])
  • retourne "true" si tous les champs obligatoire sont remplis, "false" dans les autres cas


Sachant que ce genre de trucs sert uniquement à améliorer la vie du client:

  • Il ne faut pas que ça sorte une popup ou autre truc à la con, ça lourde
  • Garde en mémoire que ce n'est pas une vérification 'réelle': c'est très facile de la désactiver ou d'envoyer des données autrement => tu DOIS effectuer une validation complète côté serveur.


Pour finir, charge à toi de l'améliorer, tu peux par exemple:

  • utiliser des classes pour manipuler les styles au lieu des styles inline, c'est plus propre
  • enregistrer les noms des champs invalides pour en faire la liste
  • gérer les champs non textuels (selects par exemple)


edit: erreur de syntaxe
 
re-edit: Opera ne supporte pas "style.borderColor", et IE merde lamentablement mais je sais pas pourquoi
re-re-edit: la remise à 0 des bordures (inputs[i].style.border="" ) est comprise par MSIE comme une demande de supprimer les bordures [:sisicaivrai]
 
Donc faut se démerder pour extraire et conserver quelque part la bordure par défaut, pour pouvoir la remettre :o
Faut passer par currentStyle.border pour MSIE et getComputedStyle().border pour le reste, sauf Safari qui pige aucun des deux et peut aller se faire foutre [:pingouino]


Message édité par masklinn le 06-09-2005 à 22:11:38

---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
n°1193695
drake-
All doomed
Posté le 06-09-2005 à 23:16:13  profilanswer
 

j'ai testé ta fonction , mais j'ai du me gouré quelque part...ca na pas l'effet esconté :'( ( à cause de IE?)
 
http://mgteam.free.fr/MLT/Shaka/Co [...] ption.html


Message édité par drake- le 06-09-2005 à 23:24:53
n°1193699
esox_ch
Posté le 06-09-2005 à 23:33:08  profilanswer
 

Citation :

sauf Safari qui pige aucun des deux et peut aller se faire foutre [:pingouino]

 
 
Masklinn en force :D


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
mood
Publicité
Posté le 06-09-2005 à 23:33:08  profilanswer
 

n°1193700
masklinn
í dag viðrar vel til loftárása
Posté le 06-09-2005 à 23:38:00  profilanswer
 

drake- a écrit :

j'ai testé ta fonction , mais j'ai du me gouré quelque part...ca na pas l'effet esconté :'( ( à cause de IE?)
 
http://mgteam.free.fr/MLT/Shaka/Co [...] ption.html


Citation :

<INPUT TYPE="text" NAME="pseudo" SIZE="16" 'class="required"'>


WTF [:pingouino]
 
Et c'est pas magique une fonction javascript hein, faut l'appeler à un moment ou à un autre, et en faire quelque chose [:mr mala]


Message édité par masklinn le 06-09-2005 à 23:38:51

---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  HTML/CSS

  Recherche de variable

 

Sujets relatifs
[PHP] la variable environnement $REMOTE_USER[MSSQL ] Recherche de texte intégral
Recuperer une variable[RESOLU] Sessions - Quand variable vide
renommer une variableconserver variable
Faire passer une variable http post via un <a href>[vba] variable globale - recherche exorciste
Recherche présence d'une variable[PHP] recherche script simple upload images + variable type/poids/H/W
Plus de sujets relatifs à : Recherche de variable


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR