J'utilise le plugin .alphanumeric pour jQuery qui fait certainement ce à quoi je m'attendrais lorsque les utilisateurs tapent directement dans la zone de texte. Mais, si un utilisateur devait copier et coller une valeur dans la zone de texte, tous les paris sont désactivés.jQuery AlphaNumericPlugin - Copier Coller Éditer
$("#<%= txtNumber.ClientID %>").alphanumeric({allow:"-"});
Je peux certainement le faire:
$(document).ready(function() {
$("#<%= txtNumber.ClientID %>").blur(function() {
$("#<%= txtNumber.ClientID %>").val(
RemoveInvalidCharacters(
$("#<%= txtNumber.ClientID %>").val()
)
);
});
});
//FUNCTION REMOVES ANY ; IN TEXT TO PREVENT SQL INJECTION
function RemoveInvalidCharacters(text) {
return text.replace(';', '');
}
Mais ... Je préfère ne pas avoir à Kluge mon code de fonctions encore plus loin avec .blur(). Y a-t-il d'autres moyens de contourner cela? Copier et coller est définitivement un défi pour les entrées masquées.
Vous ne devez pas compter sur le script côté client pour faire quoi que ce soit, mais fournir à l'utilisateur une meilleure expérience. La validation côté serveur et les requêtes paramétrées sont ce dont vous avez besoin pour vous assurer que les données sont propres et que votre base de données est protégée. –
J'utilise LINQ to SQL sur mon backend qui s'occupe déjà de ça pour moi ... J'essaie juste de faire correspondre le frontend à ce que le backside est en train de faire ... – RSolberg
http://msdn.microsoft.com/ en-us/library/bb386929.aspx – RSolberg