我的asp.net网页上有一个DropDownList.RequiredFieldValidator不起作用.谢谢你查看我的代码.
<asp:DropDownList ID="Organization" runat="server"
DataSourceID="OrganizationList"
DataTextField="OrgName" DataValueField="OrgCode" CausesValidation="True">
</asp:DropDownList>
<asp:SqlDataSource ID="OrganizationList" runat="server"
ConnectionString="<%$ ConnectionStrings:MembershipDB %>"
SelectCommand="Admin_GetOrganizationDropDown"
SelectCommandType="StoredProcedure"></asp:SqlDataSource>
<asp:RequiredFieldValidator runat="server" ID="RequiredFieldValidatorOrg"
ControlToValidate="Organization"
ErrorMessage="Organization is required."
Display="Dynamic" />
Run Code Online (Sandbox Code Playgroud)
如果你还没有完成它,你应该有一个值,这意味着你没有选择任何东西.像这样:
Organization.Insert(0,new ListItem("--Select--","0"));
Run Code Online (Sandbox Code Playgroud)
然后你需要告诉它asp:RequiredFieldValidator检查你不允许的值.所以InitialValue值应为0.像这样:
<asp:RequiredFieldValidator InitialValue="0"
Run Code Online (Sandbox Code Playgroud)
然后,当--Select--选择该选项并尝试提交页面时.该asp:RequiredFieldValidator会火.
编辑
我不喜欢你所展示的sql的外观:
Select Distinct
'name' As [OrgCode],'Please Select' As [OrgName]
FROM [MedOrganization]
Union All
SELECT [OrgCode], [OrgName] FROM [MedOrganization]
Run Code Online (Sandbox Code Playgroud)
不是一个性能vise很好的sql代码.你可以这样做:
Select
'name' As [OrgCode],'Please Select' As [OrgName]
Union All
SELECT [OrgCode], [OrgName] FROM [MedOrganization]
Run Code Online (Sandbox Code Playgroud)
为什么要在distinct那里使用?当你可以选择上面的那样.回到问题.您可以尝试将InitialValue集合设置为name:
<asp:RequiredFieldValidator InitialValue="name"
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3446 次 |
| 最近记录: |