Jason's Date Input Calendar


The calendar itself works fine. The issue is getting it to talk to my .NET form, which also works fine. It's just not capturing in the form results the JavaScript calendar value, which the script stores in a hidden field named "orderdate".

Honestly, I hardly know a lick of JavaScript or ASP (yet) -- I don't even know if what I'm asking is possible, difficult or easy. But I can follow instructions and templates, which is how I got this far.

Thanks in advance for any help.

Here's the page (label "Requested Schedule Service Date"): http://ctrfx.com/samples/entelechy/schedule_test.aspx

Here's the relevant form info:
<form runat="server">	
     <asp:MultiView ID="YourForm" runat="server" ActiveViewIndex="0">
          <asp:View ID="FormContent" runat="server">
               <label for="Requested_Schedule_Service_Date"><br />
               Requested Schedule Service Date:</label><br />

               <script type="">DateInput('orderdate', true, 'DD-MON-YYYY')</script>

               <input type="button" onClick="alert(this.form.orderdate.value)" value="Show date value passed" />

               <asp:validationsummary ID="ValidationSummary1" runat="server" CssClass="ValidateMessage" ForeColor="" ShowMessageBox="True" ShowSummary="False" />

               <asp:button ID="SubmitForm" runat="server" OnClick="SubmitForm_Click" Text="Submit Form" />

          <asp:View ID="FormConfirmationMessage" runat="server">
          <p style="text-align: left">Thank you for contacting Entelechy Solutions.</p>

          <asp:View ID="FormErrorMessage" runat="server">
          Due to technical difficulty, your message may NOT have been sent.

          <asp:View ID="FormSpamMessage" runat="server">
          You did not correctly answer the anti-spam question. Please go back and try again.</asp:View>
Here's the head script in case it's needed:
    <script runat="server" type="">
        Protected Sub SubmitForm_Click(ByVal sender As Object, ByVal e As System.EventArgs)
            If Not Page.IsValid Then Exit Sub

            Dim SendResultsTo As String = "[email removed]"
            Dim smtpMailServer As String = "[server removed]"
            Dim smtpUsername As String = "[email removed]"
            Dim smtpPassword As String = "[password removed]"
            Dim MailSubject As String = "Entelechy Contact Page Form"

                Dim txtQ As TextBox = Me.FormContent.FindControl("TextBoxQ")
                If txtQ IsNot Nothing Then
                    Dim ans As String = ViewState("hf1")
                    If ans.ToLower <> txtQ.Text.ToLower Or ans.ToUpper <> txtQ.Text.ToUpper Then
                        Me.YourForm.ActiveViewIndex = 3
                        Exit Sub
                    End If
                End If

                Dim FromEmail As String = SendResultsTo
                Dim msgBody As StringBuilder = New StringBuilder()
                Dim sendCC As Boolean = False

                For Each c As Control In Me.FormContent.Controls
                    Select Case c.GetType.ToString
                        Case "System.Web.UI.WebControls.TextBox"
                            Dim txt As TextBox = CType(c, TextBox)
                            If txt.ID.ToLower <> "textboxq" Then
                                msgBody.Append(txt.ID & ": " & txt.Text & vbCrLf & vbCrLf)
                            End If
                            If txt.ID.ToLower = "email" Then
                                'FromEmail = txt.Text
                            End If
                            If txt.ID.ToLower = "subject" Then
                                MailSubject = txt.Text
                            End If
                        Case "System.Web.UI.WebControls.CheckBox"
                            Dim chk As CheckBox = CType(c, CheckBox)
                            If chk.ID.ToLower = "checkboxcc" Then
                                If chk.Checked Then sendCC = True
                                msgBody.Append(chk.ID & ": " & chk.Checked & vbCrLf & vbCrLf)
                            End If
                        Case "System.Web.UI.WebControls.RadioButton"
                            Dim rad As RadioButton = CType(c, RadioButton)
                            msgBody.Append(rad.ID & ": " & rad.Checked & vbCrLf & vbCrLf)
                        Case "System.Web.UI.WebControls.DropDownList"
                            Dim ddl As DropDownList = CType(c, DropDownList)
                            msgBody.Append(ddl.ID & ": " & ddl.SelectedValue & vbCrLf & vbCrLf)
                    End Select
                msgBody.Append("Browser: " & Request.UserAgent & vbCrLf & vbCrLf)
                msgBody.Append("IP Address: " & Request.UserHostAddress & vbCrLf & vbCrLf)
                msgBody.Append("Server Date & Time: " & DateTime.Now & vbCrLf & vbCrLf)

                Dim myMessage As System.Net.Mail.MailMessage = New System.Net.Mail.MailMessage()
                myMessage.From = New System.Net.Mail.MailAddress(FromEmail)
                myMessage.Subject = MailSubject
                myMessage.Body = msgBody.ToString
                myMessage.IsBodyHtml = False
                If sendCC Then myMessage.CC.Add(FromEmail)

                Dim basicAuthenticationInfo As New System.Net.NetworkCredential(smtpUsername, smtpPassword)
                Dim MailObj As New System.Net.Mail.SmtpClient(smtpMailServer)
                MailObj.Credentials = basicAuthenticationInfo

                Me.YourForm.ActiveViewIndex = 1
                Me.YourForm.ActiveViewIndex = 2
            End Try
        End Sub

        Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs)
            If Not Page.IsPostBack Then
                Dim lbl As Label = Me.FormContent.FindControl("labelq")
                If lbl IsNot Nothing Then
                    Dim rq(3) As String
                    rq(0) = "Is fire hot or cold?"
                    rq(1) = "Is ice hot or cold?"
                    rq(2) = "Is water wet or dry?"

                    Dim ra(3) As String
                    ra(0) = "hot"
                    ra(1) = "cold"
                    ra(2) = "wet"
                    Dim rnd As New Random
                    Dim rn As Integer = rnd.Next(0, 3)
                    lbl.Text = rq(rn)
                    ViewState("hf1") = ra(rn)
                End If
            End If
        End Sub