Spread ASP.NET 15
Spread for ASP.NET 15 Product Documentation / Client-Side Scripting Reference / Scripting Overview / Developing a Custom HTC File / Validating Date on the Client
In This Topic
    Validating Date on the Client
    In This Topic

    One of the most frequent, and most important, uses of client-side scripting is data validation. Before doing anything else, the Web form should check that the data entered is valid. This example demonstrates how to validate the date value in a cell on the Spread component on the client side by using a custom cell type and customized client-side scripting.

    The following code for the ASPX page creates a custom cell type based on the DateTimeCellType and uses a custom HTC file, mydatetype.htc, to accomplish the client-side date validation.

    VB .NET
    Copy Code
    <Serializable()> _
    Class MyDateType
      Inherits FarPoint.Web.Spread.DateTimeCellType
      Public Overrides ReadOnly Property EditorClientScriptUrl() As String
          Return "mydatetype.htc"
        End Get
      End Property
    End Class

    Here is the listing of the mydatetype.htc file.

    Copy Code
      <PUBLIC:METHOD NAME="isValid">
    <SCRIPT language=javascript>
      function isValid(val) {
        if (val!=null && val.length>0) {
          var yearLastExp = new RegExp("^\\s*(\\d{1,2})([-./]) (\\d{1,2})\\2((\\d{4})|(\\d{2}))\\s*$");
          m = val.match(yearLastExp);
          if (m == null) {
            return "Invalid value";
          day = m[3];
          month = m[1];
          year = (m[5].length == 4) ? m[5] : m[6];
          month -= 1;
          var date = new Date(year, month, day);
          if (typeof(date) == "object" && year == date.getYear() && month == date.getMonth() && day == date.getDate())
            return "";
            return "Invalid value";
        return "";