ASP.NET表单向导可选字段?

ASP.NET表单向导可选字段?,asp.net,visual-studio-2010,formwizard,Asp.net,Visual Studio 2010,Formwizard,我制作了一个包含多页字段的ASP.NET表单向导。 这些字段中有些是必填字段,有些是可选字段。默认情况下,向导似乎会使每个字段都是必需的。如何将它们更改为可选? 我假设中的required=false会产生预期的效果,但它似乎没有任何作用 此外,我希望表单允许我点击“上一页”,即使我没有填写当前页面上的字段 非常感谢您的帮助 您使用的是所需的HTML输入标记属性,它不是ASP.NET服务器控件属性。如果存在required属性,则无论其值如何,字段都是必需的。请注意,只有在HTML5中才支持R

我制作了一个包含多页字段的ASP.NET表单向导。 这些字段中有些是必填字段,有些是可选字段。默认情况下,向导似乎会使每个字段都是必需的。如何将它们更改为可选?

我假设
中的
required=false
会产生预期的效果,但它似乎没有任何作用

此外,我希望表单允许我点击“上一页”,即使我没有填写当前页面上的字段


非常感谢您的帮助

您使用的是所需的HTML输入标记属性,它不是ASP.NET服务器控件属性。如果存在required属性,则无论其值如何,字段都是必需的。请注意,只有在HTML5中才支持Required属性

ASP.NET向导控件不需要字段,ASP.NET正在使用验证控件,最好使用该控件。对于验证程序,您必须使用ASP.NET服务器控件(文本框、复选框等),请参见此处:

如果使用ASP.NET验证程序,则可以将CausesValidation按钮属性设置为false,该按钮不会触发验证

  • 在客户端(浏览器)上验证输入字段的HTML5属性
    required
    。并非所有浏览器都这样做。如果不希望重新要求属性,请不要包含该属性(将其省略,不要说
    required=“false”

    此输入是必需的:

    <input required name=... /> 
    
    <input name=... /> 
    
    ASP.Net控件的服务器端验证(必需):

    <asp:TextBox runat="server" ID="tbox1" required />
    
    <asp:TextBox runat="server" ID="tbox1" required />
    
    <asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" 
    Text="textbox required" ControlToValidate="tbox1" ForeColor="Red" />
    
    
    
  • 验证将通过ASP.Net向导控制您的进度-必须提供必填字段(仅限)才能转到“下一步”(并返回)。这就是它应该如何工作

    我认为您遇到了困难,因为您在错误中设置了所有必填字段(因为您正在设置
    required=“false”
    属性,而不是将其忽略,并且您正在使用Chrome-这确实验证了它)


  • Hth…

    好,看来我需要将
    CausesValidation
    属性设置为
    false
    没有该属性,因此我需要将其设置为asp输入而不是html输入,对吗?进行验证时,您必须使用asp.NET服务器控件、文本框、复选框等,并且按钮具有原因验证属性,所以只有按钮具有该属性?文本输入字段是否有等效属性?不需要,只有“附加”了验证器的服务器控件才会被验证,其他控件则不会
    <input id="input1" name="input1" type="text" required runat="server" />
    
    <asp:RequiredFieldValidator ID="rf1" runat="server" 
    Text="input required" ControlToValidate="input1" ForeColor="Red" />
    
    <asp:TextBox runat="server" ID="tbox1" required />
    
    <asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" 
    Text="textbox required" ControlToValidate="tbox1" ForeColor="Red" />