2017-04-10 92 views
0

我有一个RequiredFieldValidator下拉列表。两者都在UpdatePanel中。当点击提交按钮时,它不会验证用户在下拉列表中的选择。请指导我错过了什么。RequiredFieldValidator下拉列表不工作提交按钮点击

<asp:ScriptManager ID="ScriptManager1" runat="server"> 
</asp:ScriptManager> 
<div id="divFilter"> 
    <asp:UpdatePanel ID="uplMain" runat="server"> 
     <ContentTemplate> 
      <asp:PlaceHolder ID="PlaceHolder1" runat="server"> 
       <table> 
        <tr> 
         <td valign="top"> 
          <table> 
           <tr> 
            <td> 
             <asp:CheckBox ID="chkBusiness" runat="server" Text="Business Division" CssClass="chkbox" /> 
            </td> 
            <td> 
             <asp:DropDownList ID="ddlBusiness" runat="server" AppendDataBoundItems="true" AutoPostBack="true" 
              CausesValidation="True" OnSelectedIndexChanged="ddlBusiness_SelectedIndexChanged" 
              ValidationGroup="grpSubmit" Width="350px"> 
              <asp:ListItem Selected="True" Value="-1">--- SELECT ---</asp:ListItem> 
             </asp:DropDownList> 
             <asp:RequiredFieldValidator ID="rfvBusiness" runat="server" ControlToValidate="ddlBusiness" 
              ToolTip="Please select a Business." ErrorMessage="*" CssClass="required" Display="Dynamic" 
              ValidationGroup="grpSubmit" Enabled="false"> 
             </asp:RequiredFieldValidator> 
            </td> 
           </tr> 
          </table> 
         </td> 
        </tr> 
       </table> 
      </asp:PlaceHolder> 
      <hr size="1" /> 
      <div style="text-align: center"> 
       <table style="width: 10%"> 
        <tr> 
         <td> 
          <asp:Button ID="btnHome" runat="server" Text="Home" OnClick="btnHome_Click" CssClass="btn" /> 
         </td> 
         <td> 
          <asp:Button ID="btnSubmitReport" runat="server" Text="Submit" OnClick="btnSubmitReport_Click" 
           ValidationGroup="grpSubmit" CssClass="btn" /> 
         </td> 
        </tr> 
       </table> 
      </div> 
     </ContentTemplate> 
    </asp:UpdatePanel> 
</div> 

回答

0

尝试在的RequiredFieldValidator元素为 “True” 设置启用属性。

+0

@Giligan - Setting Enabled =“true”不起作用 – SilverFish

+0

实际上,尝试将RequiredFieldValidator中的** InitialValue **属性设置为“-1”。如果提交的值是“-1”,这是您的下拉列表的默认值,这将告诉验证器验证失败。 https://msdn.microsoft.com/en-us/library/5hbw267h(vs.80).aspx – Gilligan

+0

@ Giligan-这工作表示感谢。但在实际应用中,有一些JavaScript代码可见/不可见的div,所以它不能按预期工作。我将用该代码创建一个新帖子 – SilverFish