【问题标题】:Server side validation服务器端验证
【发布时间】:2011-08-16 13:46:24
【问题描述】:

我遇到了 requiredfieldvalidator 控件在 ASP.net 页面上不起作用的问题。我已经正确完成了该字段的属性,但是当我对其进行测试时,即使相关字段为空白,也允许回发。

所以我想改为进行服务器端验证。最好的方法是什么?如果导致回发?此外,如果我发现该字段为空白,我如何让用户返回屏幕,并且他们放置在其他字段上的所有其他值都完好无损,并显示一条消息“此字段不能为空白”。

编辑:

这是代码:

<asp:TextBox ID="fName" TabIndex="1" runat="server" Width="221px" CausesValidation="True"></asp:TextBox>
<asp:RequiredFieldValidator ID="FNameRequiredFieldValidator" runat="server"        ControlToValidate="fName" InitialValue="" ErrorMessage="Filter Name cannot be blank."        ToolTip="Filter Name cannot be blank.">*</asp:RequiredFieldValidator> 

【问题讨论】:

标签: asp.net


【解决方案1】:

您还需要为您的 Button / Link 控件提供标记。

'CausesValidation' 属性不应该用于 TextBox 控件。

您单击的按钮需要将该属性设置为“True”。

请提供该标记,然后我可以就备用服务器端验证提供建议。

【讨论】:

    【解决方案2】:

    要启用客户端验证,请在 RequiredFieldValidator 上设置 EnableClientScript="true"

    您还应该始终在服务器端进行验证。但是RequiredFieldValidator 不允许您在服务器端进行任何特殊处理。只需检查Page.IsValid()。如果未提供该字段,这将返回 false

    如果您想进行自定义验证,请使用CustomValidator

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-01-01
      • 2019-12-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多