<asp:RangeValidator ID="RangeValidator1" runat="server" ControlToValidate="TextBox1"
            ErrorMessage="请输入一个日期!" MaximumValue="<%#DateTime.Today.ToString()%>" MinimumValue="2006-1-1" ></asp:RangeValidator>提示出错,如果用maximumvalue="2008-1-1" 就没问题.怎么解决呢?

解决方案 »

  1.   

    DateTime.Today.ToString("yyyy-MM-dd")%
      

  2.   

    <asp:RangeValidator ID="RangeValidator1" runat="server" ControlToValidate="TextBox1"
                ErrorMessage="请输入一个日期!" MaximumValue="<%#DateTime.Today.ToString("yyyy-mm-dd")%>" MinimumValue="2006-1-1" ></asp:RangeValidator>这样还是不行呀.DateTime.Today.ToString("yyyy-mm-dd")  这个是不错的,但是上面用就是不行呀.
      

  3.   

    我在.aspx.cspublic string a()
        {
            string b = "2008-1-1";
            return b;
        }
    然后在aspx中,<asp:RangeValidator ID="RangeValidator1" runat="server" ControlToValidate="TextBox1"
                ErrorMessage="请输入一个日期!" MaximumValue="<%#a()%>" MinimumValue="2006-1-1" ></asp:RangeValidator>还是不行呀.我都开始觉得是不是不能用<%#  %>或者<%  %>了.
    哪位大哥指点一下.谢谢!
      

  4.   

    如果不是绑定在datagrid或repeater中直接用=号。
      

  5.   

    我又试了一下,
    用一个textbox,对text进行赋值,<asp:textbox runat="server" text="<%#a()%>"/>或者text=<%DateTime.Today.ToString("yyyy-mm-dd")%>都不行啊.
      

  6.   

    text="<%=a()%">
    ================也试过了,居然也不行!真是奇怪呀。
    <%Response.Write(a());%>
    <%#a()%>
    <%a()%>
    <%=a()%>
    <%#a()%>
    <%#=a()%>全试过了,都不行呀。