簡體   English   中英

Asp.net中出現驗證碼時,如何避免從f5鍵刷新頁面?

[英]How to avoid page refresh from f5 key when captcha come in Asp.net?

在我的應用程序中,每12分鍾就會Captcha一次驗證碼。 在此不存在這樣的驗證應用,以避免page refresh ,所以正因為如此,當Captcha來在屏幕和用戶按下F5 key的頁面刷新和captcha disappear從屏幕上沒有填寫的Captcha信息到文本框中。 現在我想當驗證碼出現在屏幕上時,用戶can not do refresh submitted the captcha頁面上的can not do refresh ,直到他submitted the captcha

這是驗證碼和javascript的ASPX代碼,在12分鍾后調用驗證碼

function ShowNewPage() {
    var callbackFunctionArray = new Array(CloseCaptchaPopUp);
    modalWin.ShowURL('Captcha.aspx', 225, 290, 'Please enter characters dislayed in image to proceed', null, callbackFunctionArray);
}

Aspx頁面

<div id="Popup_content">
        <div class="box1">
            <div class="popupheadrow">
                <p class="title">
                    Please enter text below:
                </p>
            </div>
            <div class="bodyrow" align="center">
                <div class="row" style="min-height: 18px">
                    <asp:Label ID="lblMessage" runat="server"  style="color:Green; font-size: 0.8em;" Text=" "></asp:Label>
                </div>
                <div class="row">
                    <asp:Image ID="Image1" runat="server" ImageUrl="CaptchaImage.aspx" Style="width: 255px" />
                </div>
                <div class="row">
                    <asp:TextBox ID="txtimgcode" runat="server" CssClass="fields" TabIndex="1" MaxLength="10"
                        AutoComplete="false"></asp:TextBox>
                </div>
                <div class="row">
                    <asp:Button ID="CaptchaSubmit" CssClass="submit" runat="server" OnClick="CaptchaSubmit_Click"
                        Text="Submit" Height="26px" />
                         <asp:Button style="display:none" id="btnHidden" runat="server" OnClick="btnHidden_Onclick" />
                </div>
            </div>
        </div>
        <script type="text/javascript">
            setInterval(function () { btnHidden.click(); }, 60000);
</script>
        <script type="text/javascript" language="javascript">
            function CloseCaptchaModalPopup() {
                window.parent.modalWin.CallCallingWindowFunction(0, 'Information Saved Scucessfully');
            }
        </script>
    </div>

也許您可以修改您的解決方案,而不是每隔12分鍾顯示一次驗證碼,而是檢查自用戶最近一次填寫驗證碼(存儲在cookie,會話或您喜歡的任何內容...)以來的12分鍾。 那么即使在刷新頁面后,驗證碼也會顯示出來。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM