我使用ASP.NET并拥有一个Button和一个CustomValidator,它必须验证 按钮。
<asp:Button ID="saveButton" runat="server" OnClick="SaveButton_Click" Text="Speichern"
CausesValidation="true"/>
<asp:CustomValidator runat="server" ID="saveCValidator" Display="Static"
OnServerValidate="EditPriceCValidator_ServerValidate"
ControlToValidate="saveButton" ErrorMessage="">
加载页面时,收到错误消息:
“控制'saveButton'引用 的ControlToValidate属性 'saveCValidator'无法验证。“
可能是什么问题?我在网上搜索,但这没有多大帮助。
答案 0 :(得分:28)
AFAIK,ControlToValidate
属性应指向输入控件,或留空CustomValidator
控件。
来自MSDN的参考:
使用
ControlToValidate
属性 指定要验证的输入控件。 必须将此属性设置为ID 所有验证的输入控件 除CustomValidator
以外的控件 控制,可以留空。如果 您没有指定有效的输入 控制,将抛出异常 何时呈现页面。 ID必须 指同一个控件 容器作为验证控件。 它必须位于同一页面或用户中 控制,或它必须是相同的 模板控制的模板。可以的标准控件 验证的是:
- System.Web.UI.WebControls.DropDownList
- System.Web.UI.WebControls.FileUpload
- System.Web.UI.WebControls.ListBox
- System.Web.UI.WebControls.RadioButtonList
- System.Web.UI.WebControls.TextBox
- System.Web.UI.HtmlControls.HtmlInputFile
- System.Web.UI.HtmlControls.HtmlInputPassword
- System.Web.UI.HtmlControls.HtmlInputText
- System.Web.UI.HtmlControls.HtmlSelect
- System.Web.UI.HtmlControls.HtmlTextArea
答案 1 :(得分:13)
您只能使用CustomValidator against Input controls that accept user input:
客户端验证增强了 通过检查用户验证过程 在将其发送到服务器之前输入。
您想要做的是查看Button Controls and Validation.