Javascript ne marche pas

Résolu/Fermé
rukire Messages postés 90 Date d'inscription lundi 9 mars 2009 Statut Membre Dernière intervention 6 avril 2009 - 17 mars 2009 à 16:07
rukire Messages postés 90 Date d'inscription lundi 9 mars 2009 Statut Membre Dernière intervention 6 avril 2009 - 18 mars 2009 à 09:52
Bonjour,

j'ai un formulaire avec :

echo '<form method="post" action="ajout_parametres.php" name="ajout" onsubmit="return verifajout('.$_POST['nombre'].')"><p>';
for($i=1;$i<=$_POST['nombre'];$i++) //pour chaque parametre demandé
{
$type='type'.$i; //choix du type
echo '</select><br/><table class="rien"><tr><td><label for="type'.$i.'"><a class="normal" href="guide.php#type" target="_blank">Type</a> du paramètre</label> : <select id="type'.$i.'" name="'.$type.'" onchange="checktype('.$i.',\''.$strseq.'\');" >
<option value="0">Selectionner un type</option>
<option value="InFile">InFile (fichier en entrée)</option>
<option value="OutFile">OutFile (fichier en sortie)</option>
<option value="Sequence">Sequence (sequence de donnée en entrée)</option>
<option value="Results">Results (fichiers de sortie (pas à saisir par l\'utilisateur))</option>
<option value="Switch">Switch (case à cocher)</option>
<option value="List">List (liste à choix multiple)</option>
<option value="Excl">Excl (liste à choix unique)</option>
<option value="Integer">Integer (valeur entière)</option>
<option value="Float">Float (valeur réelle)</option>
<option value="String">String (chaine de caractères (sans espace et caractère spéciaux))</option>
</select></td></tr>';

$nom='nom'.$i; //choix du nom (avec vérification existance)
echo '<tr><td><label for="nom"><a class="normal" href="guide.php#nom" target="_blank">Nom</a></label> : <input type="text" id="nom" name="'.$nom.'" onblur="verif_nom(this,\''.$str.'\','.$k.');" onkeyup="verifsaisie(this)" onkeypress="return verifSaisie(event);"/></td></tr>';
}
</form>

et un script qui est comme ca

function verifajout(nbparam)
{
//vérifie pour formulaireajout si un type a bien été choisit pour le paramètre
for(i=1;i<=nbparam;i++)
{
var type='type'+i;
var name='nom'+i;
if((document.ajout.name.value != "") && (document.getElementById(type).options[document.getElementById(type).selectedIndex].value != 0))
{
return true;
}
else
{
alert("Vous n'avez pas choisi de type et/ou de nom !");
return false;
}
}
}

je vérifie donc que le type est choisit (pas celui par défaut) et qu'un nom a été tapé, mais ca me marche pas !
quelqu'un sait pourquoi?

merci d'avance (l'erreur est peut être bete mais je bloque depuis pas mal de temps alors je vois plus rien)

3 réponses

rukire Messages postés 90 Date d'inscription lundi 9 mars 2009 Statut Membre Dernière intervention 6 avril 2009 4
18 mars 2009 à 09:31
aidez moi s'il vous plait, ca marchait avant et maintenant ca ne marche plus quelqu'un sait pourquoi?

Merci d'avance !
0
rukire Messages postés 90 Date d'inscription lundi 9 mars 2009 Statut Membre Dernière intervention 6 avril 2009 4
18 mars 2009 à 09:45
bon alors le promblème c'est que quand un champ input est vide, il est undefined.
Mais comment parer ca?
0
rukire Messages postés 90 Date d'inscription lundi 9 mars 2009 Statut Membre Dernière intervention 6 avril 2009 4
18 mars 2009 à 09:52
bon ben après énormément de rechercher j'ai fini par trouver ca et ca marche !

document.forms['ajout'].name.value != undefined

voila merci quand meme
0