Recaptcha form accepts one value but then on every other entry it passes the form even if captcha is incorrect
<div id="Div_CompareSelectedDevices" class="container"> <div> <div class="row"> <div id="Div_ComparePhonesResultsTitle" class="col-xl-12"><h2><asp:Label ID="lblCompare" runat="server" ></asp:Label></h2></div> </div> <div class="row right"> <div id="Div_Email_Print"> <a id="EmailIcon" href="#" class="EmailIcon" role="button" data-toggle="modal" data-target="#EmailDialogue"><asp:Image ID="ImageEmailIcon" runat="server" class="EmailIconImage"/></a> <asp:ImageButton ID="imgBtnPrint" runat="server" onclick="imgBtnPrint_Click" CssClass="PrintButtonIcon" CausesValidation="False"/> </div> </div> </div> <table id="tblDevices" runat="server" class="tblDevices"> <tr class="CompareTop"> <td class="column-specs"></td> <td class="ProductDropDown column-phone"> <div class="prodSelector"> <div class="ELWireless_Styled_Select_Medium"> <asp:DropDownList ID="ddlProduct1" runat="server" AutoPostBack="True" OnSelectedIndexChanged="ddlProduct_SelectedIndexChanged" CssClass="form-control"> </asp:DropDownList> </div> </div> </td> <td class="ProductDropDown column-phone"> <div class="prodSelector"> <div class="ELWireless_Styled_Select_Medium"> <asp:DropDownList ID="ddlProduct2" runat="server" AutoPostBack="True" onselectedindexchanged="ddlProduct_SelectedIndexChanged" CssClass="form-control"> </asp:DropDownList> </div> </div> </td> </tr> </table> </div> <div id="EmailDialogue" class="EmailDialogue modal fade" role="dialog" data-keyboard="true"> <div id="emailcontent" class="emailContent emailContent--position1 modal-dialog" role="document" runat="server"> <div class="close-it"> <h2><asp:Label ID="lblEmailTitle" runat="server" Text=""></asp:Label></h2> <a href="#" class="close-btn" data-dismiss="modal" aria-label="Close" tabindex="0"> CLOSE <span class="icn material-icons">close</span> </a> </div> <div class="emailFunctionContainer el-form clearfix"> <div class="row"> <div class="input-group"> <asp:Label ID="lblEmailTo" CssClass="lblEmail" runat="server" ></asp:Label> <asp:TextBox ID="txtEmailTo" runat="server" CssClass="txtEmailTo form-control" ViewStateMode="Enabled" ></asp:TextBox> <asp:RequiredFieldValidator ID="rfvEmail" runat="server" CssClass="error" ControlToValidate="txtEmailTo" Display="Dynamic" ErrorMessage="" /> </div> </div> <div class="row"> <div class="input-group"> <dnn:DnnCaptcha ID="ctlCaptcha" EnableRefreshImage="True" CaptchaImage-EnableCaptchaAudio="true" runat="server" CaptchaAudioLinkButtonText="" CaptchaTextBoxCssClass="txtEmailTo short" CssClass="email-form-captcha" /> </div> </div> <div class="row"> <div class="input-group"> <asp:LinkButton ID="btnSendEmail" runat="server" CssClass="btn" onclick="btnSendEmail_Click" OnClientClick="ValidatePage()"></asp:LinkButton> </div> </div> </div> </div> <div id="emailSuccess" class="emailContent emailContent--position2 modal-dialog" role="document" runat="server" visible="false"> <div class="close-it"> <h2><asp:Label ID="Label1" runat="server" Text=""></asp:Label></h2> <a href="#" class="close-btn" data-dismiss="modal" aria-label="Close" tabindex="0" id="A1" runat="server" onclick="CloseWindow(); return false;"> CLOSE <span class="icn material-icons">close</span> </a> </div> <div class="emailFunctionContainer"> <p id="emailStatus" runat="server" class="status"></p> </div> </div> </div>
This is the code for the form
This is the code for the validation:
<script type="text/javascript"> jQuery(document).ready(function () { //jQuery("#EmailIcon").fancybox({ 'centerOnScroll': true, 'showCloseButton': false, 'modal': true, 'overlayShow': true, 'transitionIn': 'none', 'transitionOut': 'none' }); if (<%=openDialog %>) { jQuery('#EmailIcon').click(); } else {jQuery('#<%=emailSuccess.ClientID %>').hide(); jQuery('#<%=emailcontent.ClientID %>').show();} //Scripts to hide and move Prepaid/Refreshed pricing jQuery("td.tHeaderLabel:contains('HiddenPricing'), td.tHeaderLabel:contains('DisplayOptions'), td.tHeaderLabel:contains('PlanOptionProperties')").each(function () { //Starts hiding at "HiddenPricing" header and stops at next header jQuery(this).parents('tr').hide(); jQuery(this).parents('tr').nextUntil("tr.trHeader").hide(); }); }); function ValidatePage() { if (typeof (Page_ClientValidate) == 'function') Page_ClientValidate(); if (Page_IsValid) jQuery.fancybox.close(); } function CloseWindow() { jQuery('#<%=txtEmailTo.ClientID %>').val(''); jQuery('#<%=emailSuccess.ClientID %>').hide(); jQuery('#<%=emailcontent.ClientID %>').show(); } </script>
I think the ValidatePage() is the issue, thoughts? or any direction is heplful
0 comments:
Post a Comment