【问题标题】:Set Required Field Validator from .ASPX page从 .ASPX 页面设置必填字段验证器
【发布时间】:2014-09-22 07:45:23
【问题描述】:

我正在尝试通过我后面代码中的函数在必填字段验证器控件上设置启用属性。下面的代码似乎不起作用。我错过了什么?我这样做是为了在验证后测试我的代码,而不必转到所有必需的字段验证器控件来将 enable 属性更改为 false 等。

            <asp:RequiredFieldValidator ID="rfvRadTxtTimerName" 
                runat="server" ForeColor="Red"
                ControlToValidate="txtTimerName"
                ErrorMessage="* Email Address is a required field."
                ValidationGroup="submitTimer"
                Enabled=<%# (EnableOrDisableRequiredValidators() == true ? true : false) %>
                Display="Dynamic" >
            </asp:RequiredFieldValidator>


    protected bool EnableOrDisableRequiredValidators()
    {
        return false;
    }

【问题讨论】:

  • 这个RequiredFieldValidator在哪里?比如GridView、Repeater...
  • 你为什么要这样做?为什么不直接在代码隐藏中设置呢?在后面的代码中设置一个变量,然后服务器控制该变量似乎很难做到。
  • 你是对的 MikeSmithDev。我打算在 .APSX 页面中执行此操作,但不知道为什么我没有在后面的代码中执行此操作。
  • 我现在相信我这样做是因为我在 aspx 页面中为网格编辑模板进行数据绑定,所以我想从一开始就设置 enabled 属性,而不是必须在 Item_data_bound 中进行事件等。这有意义吗?

标签: c# asp.net requiredfieldvalidator


【解决方案1】:
<asp:RequiredFieldValidator ID="rfvRadTxtTimerName" 
    runat="server" ForeColor="Red"
    ControlToValidate="txtTimerName"
    ErrorMessage="* Email Address is a required field."
    ValidationGroup="submitTimer"
    Display="Dynamic">
</asp:RequiredFieldValidator>

同时在代码后面的某个地方:

rfvRadTxtTimerName.Enabled = false // true? 

我不是 100% 确定,但我认为这与数据绑定和控件值何时初始化有关。

顺便说一句,这条线(如果你找到了让它工作的方法)

Enabled=<%# (EnableOrDisableRequiredValidators() == true ? true : false) %>

可以清理

Enabled=<%# EnableOrDisableRequiredValidators() %> 

【讨论】:

  • 感谢您的信息。我没想过那样做,所以我会把我的代码改成这个。我想我打算在 .APSX 页面中与后面的代码相比,但你的方式将适用于后面的代码
  • protected void Page_Load(object sender, EventArgs e) { SetEnablePropertyForRequireFieldValidators(); if (!IsPostBack) { } } private void SetEnablePropertyForRequireFieldValidators() { bool enabledOrDisabled = EnableOrDisableRequiredValidators(); rfvRadTxtTimerName.Enabled = 启用或禁用; }
猜你喜欢
  • 2011-04-30
  • 2013-03-27
  • 1970-01-01
  • 2013-03-23
  • 1970-01-01
  • 2011-11-24
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多