【问题标题】:ASP.NET Custom Validator Error Message: Control referenced by the property cannot be validatedASP.NET 自定义验证器错误消息:无法验证属性引用的控件
【发布时间】:2010-04-14 13:29:34
【问题描述】:

我使用 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' 无法验证。”

可能是什么问题?我在网上搜索过,但这并没有太大帮助。

【问题讨论】:

    标签: asp.net customvalidator


    【解决方案1】:

    AFAIK,ControlToValidate 属性应指向输入控件或留空CustomValidator 控件。

    来自MSDN的参考:

    使用ControlToValidate 属性 指定要验证的输入控件。 此属性必须设置为的 ID 所有验证的输入控件 除CustomValidator 之外的控件 控制,可以留空。如果 您没有指定有效的输入 控制,会抛出异常 当页面被渲染时。身份证必须 引用同一个控件 容器作为验证控件。 它必须在同一页面或用户中 控制,或者必须在同一个 模板化控件的模板。

    可以使用的标准控件 经过验证的是:

    • 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

    【讨论】:

      【解决方案2】:

      您只能使用CustomValidator against Input controls that accept user input

      客户端验证增强了 通过检查用户的验证过程 在发送到服务器之前输入。

      你想做的就看这里Button Controls and Validation.

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-10-12
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-11-08
        相关资源
        最近更新 更多