Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
von Christian Wenz
ASP.NET Validierungssteuerelemente können sicherstellen, dass nur bestimmte Zeichen in benutzereingaben zulässig sind. Dies verhindert jedoch weiterhin nicht, dass Benutzer ungültige Zeichen eingeben und versuchen, das Formular zu senden.
Überblick
ASP.NET Validierungssteuerelemente können sicherstellen, dass nur bestimmte Zeichen in benutzereingaben zulässig sind. Dies verhindert jedoch weiterhin nicht, dass Benutzer ungültige Zeichen eingeben und versuchen, das Formular zu senden.
Schritte
Das ASP.NET AJAX Control Toolkit enthält das FilteredTextBox Steuerelement, das ein Textfeld erweitert. Nach der Aktivierung kann nur ein bestimmter Satz von Zeichen in das Feld eingegeben werden.
Damit dies funktioniert, benötigen wir zunächst wie gewohnt den ASP.NET AJAX ScriptManager , der die JavaScript-Bibliotheken lädt, die auch vom ASP.NET AJAX Control Toolkit verwendet werden:
<asp:ScriptManager ID="asm" runat="server" />
Dann benötigen wir ein Textfeld:
Numbers only: <asp:TextBox ID="TextBox1" runat="server" />
Schließlich kümmert sich das FilteredTextBoxExtender -Steuerelement um die Einschränkung der Zeichen, die der Benutzer eingeben darf. Legen Sie zunächst das TargetControlID -Attribut auf den ID des TextBox -Steuerelements fest. Wählen Sie dann einen der verfügbaren FilterType Werte aus:
-
CustomStandard; Sie müssen eine Liste mit gültigen Zeichen angeben. -
LowercaseLettersNur Kleinbuchstaben -
NumbersNur Ziffern -
UppercaseLettersNur Großbuchstaben
Wenn verwendet Custom FilterType wird, muss die ValidChars -Eigenschaft festgelegt werden und eine Liste von Zeichen bereitstellen, die eingegeben werden können. Übrigens: Wenn Sie versuchen, Text in das Textfeld einzufügen, werden alle ungültigen Zeichen entfernt.
Hier ist das Markup für das FilteredTextBoxExtender Steuerelement, das nur Ziffern zulässt (etwas, das auch mit FilterType="Numbers"möglich gewesen wäre):
<ajaxToolkit:FilteredTextBoxExtender ID="ftbe" runat="server"
TargetControlID="TextBox1" ValidChars="1234567890" />
Führen Sie die Seite aus, und versuchen Sie, einen Buchstaben einzugeben, wenn JavaScript aktiviert ist, funktioniert es nicht. Ziffern werden jedoch auf der Seite angezeigt. Beachten Sie jedoch, dass der Schutz FilteredTextBox nicht aufzählungssicher ist: Wenn JavaScript aktiviert ist, können alle Daten in das Textfeld eingegeben werden, sodass Sie zusätzliche Validierungsmittel verwenden müssen, z. B. ASP. Validierungssteuerelemente von NET.
Es können nur Ziffern eingegeben werden (Klicken Sie hier, um das Bild in voller Größe anzuzeigen)