Question

Je dois valider cette liste de sélection simple:

<select name="<%= key %>">
    <option value="ETC" SELECTED>Select an option...</option>
    <option value="ONE">Lorem ipsum</option>
    <option value="TWO">dolor sit amet</option>
</select>

Ainsi, l'utilisateur ne soumettrait jamais le formulaire avec le mot "excuser la répétition", "Sélectionnez une option ...". option sélectionnée. En principe, j’ai le droit d’utiliser JavaScript mais il serait intéressant d’apprendre à le résoudre au sein de JSP également.

Était-ce utile?

La solution

Vous ne pouvez jamais vraiment satisfaire à la condition "ne jamais soumettre une valeur donnée" car vous n'avez pas le contrôle sur le côté client. L'utilisateur peut toujours manipuler HTML pour envoyer ce qu'il veut.

Il est judicieux d’utiliser JavaScript pour effectuer une validation côté client, donner à l’utilisateur un retour rapide et capturer plus de 99% des cas, puis effectuer une validation côté serveur des paramètres soumis afin d’attraper la minorité n’avez pas activé JS ou manipulez le code HTML pour soumettre des valeurs non attendues.

N'oubliez pas que la validation côté client est facultative et utile pour la validation des entrées 'erreurs courantes', mais que la validation côté serveur est obligatoire pour toutes les entrées, que des vérifications côté client aient été effectuées ou non. entrée donnée.

Autres conseils

De nos jours, vous ne validez généralement pas dans les fichiers JSP, car ils ne visualisent que ce qui a été traité auparavant. Ainsi, la seule validation que vous effectuez " in jsps " est généralement Javascript. Pour le reste (la validation réelle), je partage ce que Pete a répondu: Vous devez le faire côté serveur, quelle que soit la technique que vous utilisez là-bas. Quand il est à nouveau affiché dans le JSP, la validation a longtemps été effectuée, espérons-le.

Comme je l’ai dit "de nos jours": lorsque JSP était un tout nouveau concept, beaucoup plus était fait à l’intérieur des limites d’un JSP et parfois même des formulaires étaient envoyés à des JSP. Comment valider était encore plus non standard à cette époque.

JSP est une "vue". dans le modèle MVC, et ne doit donc être utilisé que pour présenter les données à l'utilisateur. Toute logique d'application, y compris la logique de validation, doit être effectuée côté serveur. Si cette JSP doit faire partie d'une application volumineuse, je vous recommanderais d'utiliser Spring MVC pour configurer votre application et d'écrire un validateur pour valider la saisie. Mais même si nous ne parlons pas d’une application volumineuse ici, la validation devrait toujours se faire côté serveur, comme d’autres avant moi l’ont déjà noté.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top