Ich verwende ein ASP.NET-Textfeld mit dem jQuery UI datepicker. Das Textfeld ermöglicht Bearbeitungen, so dass der Benutzer ein Datum manuell eingeben oder einen vorhandenen Eintrag löschen kann. Ich habe einen CompareValidator hinzugefügt, um eine Datentypprüfung für das Textfeld durchzuführen, und dies führt zu einem Fehler nach der Auswahl eines Datums mit dem Datepicker. Der Fehler tritt bei der clientseitigen ASP.NET-Validierung auf:
Microsoft JScript runtime error: 'length' is null or not an object
der Fehler tritt in ValidatorOnChange auf. Wie kann ich das beheben? Ist es möglich, datepicker mit den ASP.NET Validator-Steuerelementen zu verwenden?
Mein Aufschlag ist:
<asp:Label runat="server" AssociatedControlID="uxInstallDate">Install Date</asp:Label>
<asp:TextBox ID="uxInstallDate" runat="server" Columns="10" />
<asp:CompareValidator runat="server" ControlToValidate="uxInstallDate" Operator="DataTypeCheck" Type="Date" Text="*" ErrorMessage="Install Date must be a date." Display="Dynamic" />
Beachten Sie, dass das fehlende ID-Attribut im CompareValidator beabsichtigt ist und das Hinzufügen dieses Attributs keinen Unterschied macht. Meine jQuery-Initialisierung ist:
$(document).ready(function() {
$("#<%= uxInstallDate.ClientID %>").datepicker({ changeMonth: true });
});