我有一个显示专辑值的下拉列表(cboViewAlbums)。第一项是 请选择相册... 。我试图使用验证,如果cboViewAlbums列表选择值0,当单击lb_create_album linkButton时会抛出错误。 下面是这个和我的尝试的代码:
<asp:DropDownList ID="cboViewAlbums" runat="server"
DataSourceID="SqlDataSource1" DataTextField="album_name"
DataValueField="album_id" Width="250px" AutoPostBack="True" AppendDataBoundItems="true">
<asp:ListItem Value="0">Please select an album...</asp:ListItem>
</asp:DropDownList>
<asp:LinkButton ID="lb_create_album" runat="server">Create Album</asp:LinkButton>
<asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:fpaConnectionString %>"
SelectCommand="SELECT [album_id], [album_name] FROM [fpa_albums] ORDER BY [album_name]">
</asp:SqlDataSource>
<br />
<asp:HyperLink CssClass="example7" ID="hLinkUploadPhotos" NavigateUrl="multiple_upload.aspx" runat="server">Upload Multiple Photos</asp:HyperLink>
<br />
<asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server"
ControlToValidate="cboViewAlbums" ErrorMessage="Please Select an Album"
InitialValue="Please select an album..."></asp:RequiredFieldValidator>
知道如何让这个工作吗?
由于
答案 0 :(得分:5)
你必须使用Range验证器和下拉列表&amp;设置mininmum值大于0&amp;设置任何最大值的最大值,aslo提供min&amp;的类型值。最大值,整数。
下面是我为您制作的示例代码,您必须绑定静态列表项的数据源。
<asp:DropDownList runat="server" ID="ddl1" >
<asp:ListItem Value="0" Text="Select value" />
<asp:ListItem Value="1" Text="text1" />
<asp:ListItem Value="2" Text="text2" />
</asp:DropDownList>
<asp:RangeValidator ErrorMessage="Please select value" ControlToValidate="ddl1" runat="server"
MinimumValue="1" MaximumValue="100000000" Type=Integer />
<asp:Button Text="text" runat="server" />
如果这对您有帮助,请标记为答案
由于
阿伦
答案 1 :(得分:2)
首先,您不能使用HyperLink进行验证,更好地使用LinkButton。 HyperLink不会回发,所以这是你的第一个错误。 其次,在您的RequiredFieldValidator上,输入initialvalue = 0,这应该可以解决您的问题。
<asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server"
ControlToValidate="cboViewAlbums" ErrorMessage="Please Select an Album"
InitialValue="0"></asp:RequiredFieldValidator>