代码之家  ›  专栏  ›  技术社区  ›  krishna

验证失败后如何重置输入字段?

  •  0
  • krishna  · 技术社区  · 16 年前

    我有一个日期输入字段的验证器。如果输入不是mm/dd/yyyy格式,那么它应该抛出一个错误并 清除输入 . 我试过text=“”属性,但这不起作用。setfocusonerror只工作了一次,如果我按两次tab键,这个区域就会失去foucs。有什么想法吗?

    <asp:RegularExpressionValidator ID="startDateValidator" Display="Dynamic"
                       ControlToValidate="dateStartDate" ValidationExpression="([0-9]|1[012])[/]([0-9]|[12][0-9]|3[01])[/](19|20)\d\d" 
                       ErrorMessage="Start Date should be in MM/DD/YYYY format" runat="server" SetFocusOnError="true" 
                       />
    

    编辑: 我想知道使用asp的验证程序控件是否可行,为什么setFocusOneRor不能正常工作?

    1 回复  |  直到 16 年前
        1
  •  1
  •   griti    16 年前

    你应该总是在服务器端验证,当然你也可以在客户端验证(可用性)。

    您可以通过JavaScript清除文本框,但是考虑到用户可能已经禁用JavaScript。这也是为什么您应该始终在服务器端验证。

    <script language=JavaScript>
    <!-- 
    function clear_textbox()
    {
        document.text_form.u_input.value = "";
    } 
    -->
    </script>
    

    您可以运行这个脚本,您需要将UA输入更改为控件名称。

    推荐文章