Aller au contenu

Sujets conseillés

Posté

Bonjour,

j'ai un formulaire de calcul à cette adresse : http://www.pipeul.com/test.html

lorsque l'on clique sur une cellule pour en changer le chiffre, le chiffre s'efface automatiquement. Si on ne saisit pas de chiffre, une fenêtre s'ouvre pour indiquer que l'on doit rentrer un nombre. Jusque là tout va bien mais on peut aller cliquer sur une autre cellule tout en laissant la précédente vide sans qu'on soit réellement obligé re rentrer un nombre.

Merci par avance de votre aide.

Nicolas

Posté

la solution qui me vient immédiatement à l'esprit :

1. mettre tout à 0 au départ

2.

- si le client rentre une valeur numérique : faire le processus normal

- si le client rentre une valeur erronée : mettre 0 ou valeur precédante.

Comme ca ds le cas ou la personne rentre n'importe quoi, tu peux toujours fixer une valeur par "default".

Posté

bien penser que ce n'est pas parce qu'on vérifie les données coté client (avec javascript) qu'on ne doit pas les vérifier coté serveur (php).

Sinon tu pourrais avoir des surprises :)

Posté

Salut Nico,

Voici un script que j'utilise sur un de mes sites... il devrait être facile à adapter.

Places-le entre <head> et </head>

<script for="formSubmit" event="onClick" type="text/javascript">
<!--
var TheForm;
// mettre le nom du formulaire, ici "Registration"
TheForm = document.Registration;

// Enlever les blancs au début et à la fin du nom et prénom
TheForm.first.value = (TheForm.first.value.replace(/^\W+/,'')).replace(/\W+$/,'');
TheForm.last.value = (TheForm.last.value.replace(/^\W+/,'')).replace(/\W+$/,'');

// remplacer tout ce qui n'est pas décimal
var re = new RegExp ('[^0-9]+', 'gi');
TheForm.prixmax.value = TheForm.prixmax.value.replace(re,'');

if (TheForm.first.value.length == 0) {
alert("Veuillez entrer votre Prénom.");
TheForm.first.focus();
}
else if (TheForm.last.value.length == 0) {
alert("Veuillez entrer votre Nom.");
TheForm.last.focus();
}
else if (TheForm.email.value.length == 0) {
alert("Veuillez entrer votre adresse email.");
TheForm.email.focus();
}
else if (TheForm.prixmax.value.length == 0) {
alert("Veuillez saisir un prix maximum.");
TheForm.prixmax.focus();
}
else if (((TheForm.email.value.indexOf('@',1))==-1)||((TheForm.email.value.indexOf('.',1))==-1)) {
alert("Veuillez vérifier votre adresse email, S.V.P!");
}
else TheForm.submit();
// -->
</script>

Penses à nommer le formulaire à l'aide de l'attribut name=... Ici le script se base sur un formulaire nommé "Registration".

;) Dan

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...