Click here to Skip to main content
15,889,808 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
See more:
Vaidation in POpup Window is not working properly
-------------------------------------------------
I am having an issue in validating popup screen in my project.I am using validation group to validate the controls in popup .Our project standard is showing Red Foreground for controls which are not filled.Its worked in Normal screens but it is not working in popups ( ForeColor color Red )?Is any way to solve this?
CLICKING ON 'btnExportLE ' button in same window the popup div will show
<asp:Button ID="btnExportLE" runat="server" class="btnNew" Text="Export LE"
OnClientClick="return ShowExpPopup();" />
JS Function
------------
function ShowExpPopup()
{
document.getElementById('<%= dvExpPopUp.ClientID %>').style.display = "block";
document.getElementById("divBG").style.display = "block";
return false;
}
CSS
.popups
{
position: absolute;
width: 550px;
height: 430px;
border-width: 0px;
top: 240px;
margin-left: 273px;
background: #FFF;
border-radius: 5px;
box-shadow: 6px 6px 7px #4d4d4d;
z-index: 10000100;
border: 1px solid #CCCCCC;
}
XML
<div id="dvExpPopUp" runat="server" class="popups" style="display: none">
        <div class="popupTop">
            <table width="550px" style="height: 100%">
                <tr style="height: 10px;">
                    <td style="text-align: center; width: 510px;">
                        <asp:Label ID="Label1" runat="server" Text="Export LE" Font-Bold="true"></asp:Label>
                    </td>
                    <td style="text-align: right; width: 30px;">
                        <asp:LinkButton ID="lnkClose1" CssClass="lnkcancel" runat="server" ForeColor="Red"
                            OnClientClick="Clear();closeInfo();" Text=" X "></asp:LinkButton>
                    </td>
                </tr>
            </table>
        </div>
        <table width="550px" style="font: Arial; font-size: small;">
            <tr>
                <td width="10%">
                </td>
                <td width="25%">
                    <asp:Label ID="lblMandantCode" runat="server" Text="Mandant Code"></asp:Label>
                </td>
                <td colspan="3">
                    <asp:TextBox ID="txtMandantCode" runat="server" class="txtBox" Width="200px" TextMode="SingleLine"
                        MaxLength="3"></asp:TextBox>
                    <asp:RequiredFieldValidator ID="RVMandantCode" runat="server" ErrorMessage="*" ControlToValidate="txtMandantCode"
                        ForeColor="Red" ValidationGroup="V2"></asp:RequiredFieldValidator>
                </td>
                <td>
                </td>
            </tr>
            <tr>
                <td width="10%">
                </td>
                <td width="25%">
                    <asp:Label ID="lblDeLimiter" runat="server" Text="Seperator"></asp:Label>
                </td>
                <td>
                    <asp:TextBox ID="txtDelimiter" runat="server" class="txtBox" Width="80px" TextMode="SingleLine"
                        MaxLength="1" Text=";"></asp:TextBox>
                    <asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" ErrorMessage="*"
                        ControlToValidate="txtDelimiter" ForeColor="Red" ValidationGroup="V2"></asp:RequiredFieldValidator>
                </td>
                <td>
                </td>
            </tr>
            <tr>
                <td width="10%">
                </td>
                <td width="25%">
                </td>
                <td colspan="3">
                    <asp:ToolkitScriptManager ID="ToolkitScriptManager2" runat="server">
                    </asp:ToolkitScriptManager>
                    <asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Conditional">
                        <ContentTemplate>
                            <asp:Button ID="btnExport" runat="server" ValidationGroup="V2" Style="margin-bottom: 0px"
                                Text="Export" class="btnNew" OnClick="btnExport_Click" />
                            <asp:Button ID="btnExpClose" runat="server" Text="Close" class="btnNew" OnClientClick="Clear();closeInfo();"
                                OnClick="btnExpClose_Click" />
                                <br />
                            <asp:Label ID="lblResult" runat="server" Text="" class="errMsg"></asp:Label>
                            <asp:UpdateProgress ID="UpdWaitImage" runat="server" DynamicLayout="true" AssociatedUpdatePanelID="UpdatePanel1">
                                <ProgressTemplate>
                                    <asp:Image ID="imgProgress" ImageUrl="Images/loader.gif" runat="server" />
                                    <asp:Label ID="lblWait" runat="server" Text="Please Wait..." Font-Bold="true" ForeColor="#FE2E2E"></asp:Label>
                                </ProgressTemplate>
                            </asp:UpdateProgress>
                        </ContentTemplate>
                    </asp:UpdatePanel>
                </td>
            </tr>
        </table>
    </div>
Posted
Comments
Laiju k 6-Nov-14 0:26am    
where is your code for "Clear();closeInfo();"
jithesh a 6-Nov-14 0:34am    
function closeInfo() {
document.getElementById("divBG").style.display = "none";
document.getElementById("divDisplayInfo").style.display = "none";
document.getElementById('<%= dvExpPopUp.ClientID %>').style.display = "none";

return false;
}

function Clear() {
document.getElementById("<%=txtMandantCode.ClientID %>").value = "";
document.getElementById("<%=txtLocation.ClientID %>").value = "";
document.getElementById("<%=txtFileName.ClientID %>").value = "";
document.getElementById("<%=lstFolders.ClientID %>").options.length = 0;
document.getElementById("<%=ddlDrives.ClientID %>").selectedIndex = 0;
return true;
}

1 solution

Its Working fine

C#
function fnOnUpdateValidators()
{
   for (var i = 0; i < Page_Validators.length; i++)
   {
      var val = Page_Validators[i];
      var ctrl = document.getElementById(val.controltovalidate);
      if (ctrl != null && ctrl.style != null)
      {
         if (!val.isvalid)
            ctrl.style.background = '#FFAAAA';
         else
            ctrl.style.backgroundColor = '';
      }
   }
}


load
------
Page.ClientScript.RegisterOnSubmitStatement(this.GetType(), "val", "fnOnUpdateValidators();");
 
Share this answer
 

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900