|
|
|
|
[javascript] pourquoi pas sous IE ?
Dernière réponse le 3 avr 2007 à 18:33:26 txiki, le 29 mar 2007 à 15:24:25Salut a tous les spécialistes javascript,
Voici un script de controle de certains champs d'un form. Chez moi (Firefox et XP) tout fonctionne parfaitement.
Par contre sous IE6 et W2000 (bureau), il ne voit pas qu'il y a une option choisie dans groupe (1er controle).
Si je change le champ en type text: c'est OK.
Donc, j'en déduis que c'est les listes déroulantes qu'il n'aime pas ! Je me trompe ? Ou alors c'est le code qui est mal écrit ?
Quel est le PB SVP ?
<!-- Vérification des champs obligatoires du formulaire
function verif()
{
var nom = document.formulaire.groupe.value; // liste déroulante
if (document.formulaire.groupe.value == "")
{
alert ('Veuillez entrer le groupe auquel appartient le logiciel');
document.formulaire.groupe.focus();
return false;
}
if(document.formulaire.categorie.value == "") // liste déroulante
{
alert ('Veuillez entrer la catégorie du logiciel');
document.formulaire.categorie.focus();
return false;
}
if(document.formulaire.nom.value == "")
{
alert ('Veuillez entrer le nom du logiciel');
document.formulaire.nom.focus();
return false;
}
if(document.formulaire.reference_DSI.value == "") // liste déroulante
{
alert ('Veuillez entrer la référence DSI');
document.formulaire.reference_DSI.focus();
return false;
}
if(document.formulaire.reference_DSI.value.length != 3)
{
alert ('La référence doit comporter trois caractères');
document.formulaire.reference_DSI.focus();
return false;
}
else {return true;}
}
//-->
Merci d'avance pour votre correction !
Le bonheur est la seule chose que l'on peut donner sans l'avoir.
Configuration: Windows 2000 Internet Explorer 6.0
J'ai un peu travailler dans le developpement web enfin j'ai fais un stage de 4 mois la dedans à la fin de mon dut. et je me suis rendu compte que firefox respecter bien les normes pour le javascript donc en general on a pas de problème mais IE6... quelle misère c une synthaxe spéciale enfin c pas qu'elle est spéciale c'est qu'elle respecte pas les normes...
|
Merci maelo,
|
Salut Serge_La et merci pour ta réponse,
<?
session_start(); // A placer obligatoirement avant tout code html
$_SESSION['connect']=0; //initialise la variable 'connect'
if (isset($_POST['mot_de_passe']) AND isset($_POST['login'])) // Si les variables existent
{
$mot_de_passe=$_POST['mot_de_passe'];
$login=$_POST['login']; //On récupère les données envoyées par la méthode POST du formulaire d'identification
}
else // Les variables n'existent pas encore
{
$mot_de_passe="";
$login=""; // On crée des variables $mot_de_passe et $login vides
}
if (($mot_de_passe == "******" AND $login == "******") OR ($mot_de_passe == "tinotibet" AND $login == "tintin")OR ($mot_de_passe == "******" AND $login == "******") OR ($mot_de_passe == "******" AND $login == "******"))
// Si le mot de passe et le login sont bons (valable pour 1 utilisateur ou plus). J'ai mis plusieurs identifiants et mots de passe.
{
$_SESSION['connect']=1; // Change la valeur de la variable connect. C'est elle qui nous permettra de savoir s'il y eu identification.
$_SESSION['login']=$login; // Permet de récupérer le login afin de personnaliser la navigation
// On affiche la page cachée.
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html>
<head>
<title>Fiche ajout de logiciel dans la base</title>
<link href="scripts_styles/form.css" rel="stylesheet">
<script language="javascript" src="scripts_styles/verif.js" type="text/javascript"></script>
<script type="text/javascript" language="JavaScript">
// si l'année à deux chiffres entrait les dates après cette année ont considéré le siècle 20.
var NUM_CENTYEAR = 30;
// c'est la commande d'entrée de temps exigée par défaut
var BUL_TIMECOMPONENT = false;
// sont les boutons de défilement d'année exigés par défaut
var BUL_YEARSCROLL = true;
var calendars = [];
var RE_NUM = /^\-?\d+$/;
function calendar1(obj_target) {
// assignation des méthodes
this.gen_date = cal_gen_date1;
this.gen_time = cal_gen_time1;
this.gen_tsmp = cal_gen_tsmp1;
this.prs_date = cal_prs_date1;
this.prs_time = cal_prs_time1;
this.prs_tsmp = cal_prs_tsmp1;
this.popup = cal_popup1;
// validez les paramètres d'entrée
if (!obj_target)
return cal_error("Error calling the calendar: no target control specified");
if (obj_target.value == null)
return cal_error("Error calling the calendar: parameter specified is not valid target control");
this.target = obj_target;
this.time_comp = BUL_TIMECOMPONENT;
this.year_scroll = BUL_YEARSCROLL;
// enregistrer dans les "collections" globales
this.id = calendars.length;
calendars[this.id] = this;
}
function cal_popup1 (str_datetime) {
if (str_datetime) {
this.dt_current = this.prs_tsmp(str_datetime);
}
else {
this.dt_current = this.prs_tsmp(this.target.value);
this.dt_selected = this.dt_current;
}
if (!this.dt_current) return;
var obj_calwindow = window.open(
'calendar.html?datetime=' + this.dt_current.valueOf()+ '&id=' + this.id,
'Calendar', 'width=240,height=200'+
',status=no,resizable=no,top=200,left=200,dependent=yes,alwaysRaised=yes'
);
obj_calwindow.opener = window;
obj_calwindow.focus();
}
// fonction génératrice de timestamp
function cal_gen_tsmp1 (dt_datetime) {
return(this.gen_date(dt_datetime) + ' ' + this.gen_time(dt_datetime));
}
// fonction génératrice de date
function cal_gen_date1 (dt_datetime) {
return (
(dt_datetime.getDate() < 10 ? '0' : '') + dt_datetime.getDate() + "-"
+ (dt_datetime.getMonth() < 9 ? '0' : '') + (dt_datetime.getMonth() + 1) + "-"
+ dt_datetime.getFullYear()
);
}
// fonction génératrice de temps
function cal_gen_time1 (dt_datetime) {
return (
(dt_datetime.getHours() < 10 ? '0' : '') + dt_datetime.getHours() + ":"
+ (dt_datetime.getMinutes() < 10 ? '0' : '') + (dt_datetime.getMinutes()) + ":"
+ (dt_datetime.getSeconds() < 10 ? '0' : '') + (dt_datetime.getSeconds())
);
}
// fonction d'analyse de timestamp
function cal_prs_tsmp1 (str_datetime) {
// si aucun paramètre n'est spécifié, retourner à l'actuel timestamp
if (!str_datetime)
return (new Date());
// si "festin" positif de nombre entier comme millisecondes d'époque
if (RE_NUM.exec(str_datetime))
return new Date(str_datetime);
// donc traiter comme date dans le format de "corde"
var arr_datetime = str_datetime.split(' ');
return this.prs_time(arr_datetime[1], this.prs_date(arr_datetime[0]));
}
// fonction d'analyse de la date
function cal_prs_date1 (str_date) {
var arr_date = str_date.split('-');
if (arr_date.length != 3) return cal_error ("Invalid date format: '" + str_date + "'.\nFormat accepted is dd-mm-yyyy.");
if (!arr_date[0]) return cal_error ("Invalid date format: '" + str_date + "'.\nNo day of month value can be found.");
if (!RE_NUM.exec(arr_date[0])) return cal_error ("Invalid day of month value: '" + arr_date[0] + "'.\nAllowed values are unsigned integers.");
if (!arr_date[1]) return cal_error ("Invalid date format: '" + str_date + "'.\nNo month value can be found.");
if (!RE_NUM.exec(arr_date[1])) return cal_error ("Invalid month value: '" + arr_date[1] + "'.\nAllowed values are unsigned integers.");
if (!arr_date[2]) return cal_error ("Invalid date format: '" + str_date + "'.\nNo year value can be found.");
if (!RE_NUM.exec(arr_date[2])) return cal_error ("Invalid year value: '" + arr_date[2] + "'.\nAllowed values are unsigned integers.");
var dt_date = new Date();
dt_date.setDate(1);
if (arr_date[1] < 1 || arr_date[1] > 12) return cal_error ("Invalid month value: '" + arr_date[1] + "'.\nAllowed range is 01-12.");
dt_date.setMonth(arr_date[1]-1);
if (arr_date[2] < 100) arr_date[2] = Number(arr_date[2]) + (arr_date[2] < NUM_CENTYEAR ? 2000 : 1900);
dt_date.setFullYear(arr_date[2]);
var dt_numdays = new Date(arr_date[2], arr_date[1], 0);
dt_date.setDate(arr_date[0]);
if (dt_date.getMonth() != (arr_date[1]-1)) return cal_error ("Invalid day of month value: '" + arr_date[0] + "'.\nAllowed range is 01-"+dt_numdays.getDate()+".");
return (dt_date)
}
// fonction d'analyse du temps
function cal_prs_time1 (str_time, dt_date) {
if (!dt_date) return null;
var arr_time = String(str_time ? str_time : '').split(':');
if (!arr_time[0]) dt_date.setHours(0);
else if (RE_NUM.exec(arr_time[0]))
if (arr_time[0] < 24) dt_date.setHours(arr_time[0]);
else return cal_error ("Invalid hours value: '" + arr_time[0] + "'.\nAllowed range is 00-23.");
else return cal_error ("Invalid hours value: '" + arr_time[0] + "'.\nAllowed values are unsigned integers.");
if (!arr_time[1]) dt_date.setMinutes(0);
else if (RE_NUM.exec(arr_time[1]))
if (arr_time[1] < 60) dt_date.setMinutes(arr_time[1]);
else return cal_error ("Invalid minutes value: '" + arr_time[1] + "'.\nAllowed range is 00-59.");
else return cal_error ("Invalid minutes value: '" + arr_time[1] + "'.\nAllowed values are unsigned integers.");
if (!arr_time[2]) dt_date.setSeconds(0);
else if (RE_NUM.exec(arr_time[2]))
if (arr_time[2] < 60) dt_date.setSeconds(arr_time[2]);
else return cal_error ("Invalid seconds value: '" + arr_time[2] + "'.\nAllowed range is 00-59.");
else return cal_error ("Invalid seconds value: '" + arr_time[2] + "'.\nAllowed values are unsigned integers.");
dt_date.setMilliseconds(0);
return dt_date;
}
function cal_error (str_message) {
alert (str_message);
return null;
}
</script>
<!-- FIN SCRIPT CALENDRIER -->
</head>
<body>
<h1> Ajout d'un logiciel </h1>
<p align="center"> Les champs marqués <strong class="echec">*</strong> sont obligatoires</p>
<form method="post" name="formulaire" id="formulaire" action="insert.php">
<table width="100%" border="0" align="center" cellpadding="5" cellspacing="1" class="calendar">
<tr>
<td > Veuillez choisir la date en utilisant le calendrier ci-contre: <a href="javascript:cal1.popup();"><img src="img-calendar/cal.gif" width="16" height="16" border="0" alt="Cliquez ici pour obtenir la date." title="Cliquez ici pour obtenir la date."></a> <input type="Text" name="input1" value="" size="20"></td>
</tr>
<script language="JavaScript">
<!-- // créer un objet de calendrier juste après la fermeture d'un "tag de formulaire"
// spécifier l'élément du formulaire comme le seul paramètre (document.forms['nom_du_formulaire'].elements['nom_d'entrée']);
// note : vous pouvez avoir autant d'objets de calendrier dont vous avez besoin pour votre application
// ==============================================================================
// elements.date ou ['date']" est le name du champ du formulaire juste au dessus
var cal1 = new calendar1(document.forms['formulaire'].elements['input1']);
cal1.year_scroll = true;
cal1.time_comp = false;
</script>
</table>
<br>
<table width="100%" border="0" align="center" cellpadding="3" cellspacing="0">
<tr>
<td> Groupe: <strong class="echec">*</strong>
<select name="groupe">// c'est ici que ça foire ! ! !
<option> </option>
<option>métier</option>
<option>management</option>
<option>SI de gestion</option>
<option>poste de travail</option>
</select>
</td>
</tr>
</table>
<table width="100%" border="0" align="center" cellpadding="3" cellspacing="0">
<tr>
<td width="50%"> Catégorie: <strong class="echec">*</strong>// et probablement ici aussi mais ça ne passe pas le premier controle alors ? ? ?
<select name="categorie">
<option> </option>
<option>CFAO</option>
<option>DAO</option>
<option>Logiciel embarqué</option>
<option>Calcul-Simulation</option>
<option>Mesure-Acquisition</option>
<option>Supervision-Pilotage</option>
<option>PAO</option>
<option>Reprographie métier-traceur</option>
<option>Maintenance moteur</option>
<option>Développement informatique</option>
<option>Gestion connaissances</option>
<option>Divers</option>
<option>Informatique décisionnelle</option>
<option>Gestion projet-Planification</option>
<option>Gestion processus</option>
<option>Projet SAP</option>
<option>communication-Bureautique</option>
<option>Sécurité</option>
<option>Composant accès services</option>
<option>Outillage banalisé</option>
<option>Driver périphérique carte</option>
<option>OS système</option>
<option>Infrastructure technique</option>
</select> </td>
<td width="5"> </td>
<td width="50%">Source: <input type="text" name="source" size="30" maxlength="100"></td>
</tr>
<tr>
<td width="50%">Editeur: <input TYPE="text" name="editeur" SIZE="46" maxlength="100"></td>
<td width="5"> </td>
<td width="50%"> Nom: <strong class="echec">*</strong><input TYPE="text" name="nom" SIZE="51" maxlength="255">
</td>
</tr>
<tr>
<td width="50%">Ligne du produit:
<input TYPE="text" name="ligne_produit" SIZE="36" maxlength="100"></td>
<td width="5"> </td>
<td width="50%">Socle: <input TYPE="text" name="socle" SIZE="40"></td>
</tr>
<tr>
<td width="50%">Référence DSI: <strong class="echec">*</strong><select name="reference_DSI">
<option> </option>
<option>cat</option>
<option>ref</option>
<option>éval</option>
<option>rebut</option>
</select>
</td>
<td width="5"> </td>
<td width="50%">Standard DSI: <select name="standard_DSI">
<option> </option>
<option>standard</option>
<option>rebut</option>
</select></td>
</tr>
<tr>
<td width="50%">Type de licence: <select name="type_licence">
<option> </option>
<option>monoposte</option>
<option>monoposte à jeton</option>
<option>monoposte dongle</option>
<option>monoposte + clé matérielle</option>
<option>monoposte + clé logicielle</option>
<option>réseau</option>
<option>licence flottante</option>
<option>licence flottante et monoposte</option>
<option>client lourd</option>
<option>client serveur</option>
<option>clé matérielle</option>
<option>accès unix</option>
<option>développement spécifique TM</option>
<option>licence site</option>
<option>client citrix</option>
<option>aucune</option>
</select></td>
<td width="5"> </td>
<td width="50%">Version standard: <input TYPE="text" name="version_standard" SIZE="20" maxlength="150"></td>
</tr>
<tr>
<td width="50%">Compatibilité XP: <select name="compatibilite_XP">
<option> </option>
<option>oui</option>
<option>non</option>
<option>oui pour version 2006</option>
<option>?</option>
<option>? pour 4.3 oui pour 5.0</option>
<option>IE 5.5 sp1</option>
<option>Office 2000, 2002, 2003</option>
</select></td>
<td width="5"> </td>
<td width="50%">Versions en exploitation: <input TYPE="text" name="versions_exploitation" SIZE="20"></td>
</tr>
<tr>
<td width="50%">Type de déploiement: <select name="type_deploiement">
<option> </option>
<option> serveur/script</option>
<option>serveur/script + CD</option>
<option>serveur/procédure</option>
<option>manuelle</option>
<option>CD</option>
<option>?</option>
<option>logon script</option>
<option>logon script + disque S</option>
<option>FTP</option>
<option>téléchargée</option>
<option>en cours</option>
</select></td>
<td width="5"> </td>
<td width="50%">Type d'installation: <select name="type_installation">
<option> </option>
<option>locale</option>
<option>réseau</option>
<option>client</option>
<option>serveur</option>
<option>non</option>
</select></td>
</tr>
<tr>
<td width="50%">Domaine: <select name="domaine">
<option> </option>
<option>CFAO</option>
<option>DAO</option>
<option>PAO</option>
<option>Calul/Simulation</option>
<option>Logiciel embarqué</option>
<option>Mesure/Acquisition</option>
<option>Supervision/Pilotage</option>
<option>Reprographie</option>
<option>Maintenance moteur</option>
<option>Développement informatique</option>
<option>Gestion des connaissances</option>
<option>Informatique décisionnelle</option>
<option>Gestion de projet</option>
<option>Planification</option>
<option>Modélisation processus</option>
<option>SI de gestion</option>
<option>Accompagnement au changement</option>
<option>Projet SI</option>
<option>Communication/Bureautique</option>
<option>Sécurité</option>
<option>COmposant d'accès à un service</option>
<option>Composant java sur le poste</option>
<option>Outillage banalisé</option>
<option>Driver, périphérique, exploitation périphérique </option>
<option>OS</option>
<option>Outil système</option>
<option>Infrastructure technique</option>
</select></td>
<td width="5"> </td>
<td width="50%"><table width="100%" border="0" cellspacing="0" cellpadding="2">
<tr>
<td> </td>
<td rowspan="3"><textarea name="fonctionnalite" cols="35" rows="1" wrap="PHYSICAL"></textarea></td>
</tr>
<tr>
<td>Fonctionnalité: </td>
</tr>
<tr>
<td> </td>
</tr>
</table>
</td>
</tr>
<tr>
<td width="50%"><table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td> </td>
<td rowspan="3"><textarea name="description" cols="35" rows="1" wrap="PHYSICAL"></textarea></td>
</tr>
<tr>
<td>Description: </td>
</tr>
<tr>
<td> </td>
</tr>
</table>
</td>
<td width="5"> </td>
<td width="50%"><table width="100%" border="0" cellspacing="0" cellpadding="2">
<tr>
<td> </td>
<td rowspan="3"><textarea name="instructions" cols="35" rows="1" wrap="PHYSICAL"></textarea></td>
</tr>
<tr>
<td>Instructions: </td>
</tr>
<tr>
<td> </td>
</tr>
</table>
</td>
</tr>
<tr>
<td width="50%"><table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td> </td>
<td rowspan="3"><textarea name="pre_requis" cols="35" rows="1" wrap="PHYSICAL"></textarea></td>
</tr>
<tr>
<td>Pré-requis: </td>
</tr>
<tr>
<td> </td>
</tr>
</table>
</td>
<td width="5"> </td>
<td width="50%">Référent métier: <input TYPE="text" name="referent_metier" SIZE="36" maxlength="255"></td>
</tr>
</table>
<table width="100%" border="0" align="center" cellpadding="3" cellspacing="0">
<tr>
<td><table width="100%" border="0" cellspacing="0" cellpadding="2">
<tr>
<td> </td>
<td rowspan="3"><textarea name="commentaires" cols="85" rows="2" wrap="PHYSICAL"></textarea></td>
</tr>
<tr>
<td>Commentaires:</td>
</tr>
<tr>
<td> </td>
</tr>
</table>
</td>
</tr>
</table>
<table width="80%" border="0" align="center" cellpadding="4" cellspacing="0">
<tr>
<td align="center"><input type="submit" name="submit" value="Ajouter la fiche dans la base" onClick="javascript: return verif();"></td>
</tr>
</table>
</table>
</form>
<br />
<table width="60%" border="0" align="center" cellpadding="4" cellspacing="0">
<tr>
<td colspan="3" align="center"><a href="index.php"><img src="boutons-catalogue/accueil.png" alt="Retour à la page d'accueil" width="62" height="21" border="0"></a> <a href="liste.php"><img src="boutons-catalogue/afficher-catalogue.png" alt="Afficher la liste des logiciels du catalogue" width="139" height="21" border="0"></a> <a href="fiche_ajout.php"><img src="boutons-catalogue/ajouter.png" alt="Ajouter un logiciel au catalogue" width="116" height="21" border="0"></a> <a href="rechercher.php"><img src="boutons-catalogue/chercher-fiche.png" alt="Chercher un logiciel dans le catalogue" width="128" height="21" border="0"></a> <a href="javascript:history.go(-1)"><img src="boutons-catalogue/retour.png" alt="Retour à la page précédente" width="58" height="21" border="0"></a></td>
</tr>
<tr>
<td align="center" width="35%"> </td>
<td align="center" bgcolor="#E5E5E5" width="30%">
<?
echo "Mis à jour le: ";
echo date("d - m - Y");
?>
</td>
<td align="center" width="35%"> </td>
</tr>
</table>
<p> </p>
</body>
</html>
<?
}
else // le mot de passe n'est pas bon
{
// On affiche la zone de texte pour rentrer le mot de passe.
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
<title> Page protégée par mot de passe </title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<link href="scripts_styles/form.css" rel="stylesheet">
</head>
<body>
<p> </p>
<h1 align="center"> Cette page est réservée aux administrateurs uniquement ! </h1>
<h3 align="center" class="echec"> Veuillez entrer le login et mot de passe : </h3>
<table width="300px"><tr>
<form action="fiche_ajout.php" method="post">
<p align="center"><input type="text" name="login" /></p>
<p align="center"><input type="password" name="mot_de_passe" /></p>
<p align="center"><input type="submit" value="Valider" /></p>
</form>
</tr></table>
</body>
</html>
<?
} // Fin du else
// Fin du code :)
?>
NOTE: le script qui affiche le calendrier, je n'ai pas su le mettre à part, fichier séparé, parcequ'il faudrait lui indiquer l'url des images etc... mais je ne voit pas dans le script, ces chemins. ça ne fonctionne pas si c'est un fichier séparé et pourtant c'est un super truc, ce système de calendrier. Voilà, si tu vois l'erreur, je serais diablement soulagé (d'autant plus que c'est pour le boulot). Ils attendent après ça et suis sous pression ! ! ! :-(((( Merci infiniment ! J'oubliais ! tu peux le voir sur: http://txiki.free.fr Le bonheur est la seule chose que l'on peut donner sans l'avoir. |
Bonjour Txiki,
|
Salut Serge et merci pour ta réponse,
<script type="text/javascript" language="JavaScript"> // si l'année à deux chiffres entrait les dates après cette année ont considéré le siècle 20. var NUM_CENTYEAR = 30; // c'est la commande d'entrée de temps exigée par défaut var BUL_TIMECOMPONENT = false; // sont les boutons de défilement d'année exigés par défaut var BUL_YEARSCROLL = true;......... Tu veux parler de cette partie ? Je ne connais rien au perl, mais alors absolument rien ! Mon problème: Sous IE: lorsque je clique sur "Ajouter la fiche dans la base" dans le formulaire sans avoir précisé le groupe et la catégorie (champs obligatoires mais surtout de type liste car en type text classique ça fonctionne (?)..) le controlejavascript me demande renseigner le groupe. Donc je choisi un groupe et je reclique sur le bouton Ajouter une fiche dans la base. Mais il me redemande de choisir le groupe ???? Alors qu'il a été choisi. Sous Firefox et XP (chez moi), ça fonctionne très bien ! Si tu maitrise le perl (si toutefois c'est du perl) pourrais-tu me préciser où je dois modifier les paramètres suivants: les répertoire des images du calendrier (img-calendar à la racine dans mon arbo du site) la page calendar.html à la racine du site. C'est pour éviter que le script soit dans la page elle même. J'avais bien essayé mais ça ne fonctionnait pas (comme quand on fait: " <script language="javascript" src="scripts_styles/verif.js" type="text/javascript"></script>" Cette page est vraiment très importante et il faut absolument qu'elle soit opérationnelle dans très peu de temps ! :-((( Merci encore pour ton attention dévouée ! Le bonheur est la seule chose que l'on peut donner sans l'avoir. |
Bonsoir txiki,
|
Rerebonsoir,
|
Salut Serge,
|
Rebonjour txiki,
<!-- Vérification des champs obligatoires du formulaire Alors que <!--est le code de commentaire en html. En javascript, c'est // Alors, change ta ligne pour ceci: // Vérification des champs obligatoires du formulaire. Autre problème (une fois que celui-ci est réglé), la condition pour les reference_DSI est d'exactement trois caractères alors que quelques-uns de tes choix en ont plus. Faudra la changer, non? Voilà. Essayes encore. Serge. |
Salut Serge,
|
Bonjour Txiki,
var nom = document.formulaire.groupe.value; // liste déroulante fait une collision avec ce code: if(document.formulaire.nom.value == "")
{
alert ('Veuillez entrer le nom du logiciel');
document.formulaire.nom.focus();
Dans ta fonction verif(), la variable nom (var nom) ne semble pas utile. Essayes en enlevant cette ligne. Bon attends, je t'envoie tout le code corrigé pour voir: function verif()
{
if (document.forms['formulaire'].groupe.value == "")
{
alert ('Veuillez entrer le groupe auquel appartient le logiciel');
document.forms['formulaire'].groupe.focus();
return false;
}
if(document.forms['formulaire'].categorie.value == "") // liste déroulante
{
alert ('Veuillez entrer la catégorie du logiciel');
document.forms['formulaire'].categorie.focus();
return false;
}
if(document.forms['formulaire'].nom.value == "")
{
alert ('Veuillez entrer le nom du logiciel');
document.forms['formulaire'].nom.focus();
return false;
}
if(document.forms['formulaire'].reference_DSI.value == "") // liste déroulante
{
alert ('Veuillez entrer la référence DSI');
document.forms['formulaire'].reference_DSI.focus();
return false;
}
if(document.forms['formulaire'].reference_DSI.value.length != 3)
{
alert ('La référence doit comporter trois caractères');
document.forms['formulaire'].reference_DSI.focus();
return false;
}
else {return true;}
}
Je peux corriger le code pour reference_DSI facilement. Quelle serait la condition à mettre? Même que les autres? Serge.
|
D'accord. Assez facile.
|

