这既是一个代码问题,也是一个代码维护问题,但是我有一个不再检查它的CustomValidator的WebForm。当我在一年多前最后一次接触代码时,它可以工作,但现在它不再工作了,因为用户已经请求了一些更改……
WebForm包含一个数据绑定下拉列表,其中包含一个默认的“- All -”项,其值为String.Empty。当用户单击submit按钮时,验证器应该检查下拉菜单的值不是String.Empty。我已经在客户端验证代码和服务器验证代码中设置了断点,但都没有触发。
你会从哪里开始寻找呢?常见的嫌犯是什么?当然,我已经将我的工作副本与源代码控制中的副本进行了比较,但没有任何可疑之处。
以防万一,下面是我的代码:
<asp:DropDownList ID="_AssessmentDropDown" runat="server" DataSourceID="_AssessmentsData" CausesValidation="true" AutoPostBack="false"
DataTextField="AssessmentName" DataValueField="AssessmentName" OnDataBound="_HandleAssessmentsBound">
</asp:DropDownList>
<asp:CustomValidator ID="_AssessmentValidator" runat="server" ClientValidationFunction="_HandleValidateAssessment_Client"
ControlToValidate="_AssessmentDropDown" ErrorMessage="* You must select an Assessment."
OnServerValidate="_HandleValidateAssessment" />
<asp:ObjectDataSource ID="_AssessmentsData" runat="server"
OldValuesParameterFormatString="original_{0}" SelectMethod="GetData"
TypeName="DataTableAdapters.GET_GRADE_ASSESSMENTSTableAdapter">
<SelectParameters>
<asp:ControlParameter Name="GRADECODE" ControlID="_GradeCodeDropDown" PropertyName="SelectedValue" />
</SelectParameters>
</asp:ObjectDataSource>发布于 2008-11-11 19:44:41
我注意到几个问题
发布于 2008-11-11 19:52:19
如果要验证的控件的值为空,则不会触发CustomValidator,因此CustomValidator应始终伴随RequiredFieldValidator
发布于 2008-11-11 19:38:08
一些故障排除步骤:
https://stackoverflow.com/questions/281914
复制相似问题