验证码刷新浏览器的后退按钮(Reload recaptcha on browser back but

2019-10-17 13:31发布

我已经试过许多方法分页回时重新加载图像,但无论我怎么努力,我得到了相同的图像。 有些方法很接近(我可以看到图像刷新,但验证码服务器响应回与先前图像重新出现)。 有一些窍门能让图像单击后退按钮时重新加载? 我不希望我的用户不得不重新输入所有形式的信息,如果他们没有正确键入安全字。 我也想避免存储所有信息。 该网页是传统的ASP,所以jQuery的AJAX或方法将是去,还是让ID假设的路线。 提前致谢。

Answer 1:

我想出了一个快速的黑客工具,修复此问题。 在与验证码的页面中添加以下的jQuery

<script>
$(document).ready(function(){
  $("#form_div").Show();
);
</script>

只需更换“#form_div”与任何DIV房屋的形式。 现在,当用户点击后退按钮它刷新的ReCaptcha图像。 这是每一个词的意义上的黑客,但它为我工作。



Answer 2:

从打电话给你的刷新方法window.onload

window.onload = function(){ /* refresh here */ }


Answer 3:

编辑:删除历史API的回答显示可能的AJAX的答案。

与jQuery这是可笑容易。

$(window).on('load',function(){
    $('#RecaptchaContainer').load('/path/to/recaptcha.php',function(){
         // any javascript you need to perform on the recaptcha
    });
});

您可以在该文件中所有的reCAPTCHA HTML,但可以包含回调函数中的所有JavaScript。



Answer 4:

这是与Chrome的工作简单的方法:

添加重装功能上的HTML体如下:

<body onload="javascript:Recaptcha.reload()">

reCaptcha在Chrome图像自动重新加载时用户单击后退按钮。



Answer 5:

我设法得到它通过使用这行代码正确刷新:

body onLoad="javascript:Recaptcha.reload()"

但这种方法是不是一个很好的解决方案,因为焦点设置在recaptacha文本字段,这意味着该窗口向下滚动到这哪里是recaptacha场,甚至当你进入页面的第一次(而不是页面的底部只有在按“BACK”页面)时。 该解决方案的工作,但它会更好地发现它不设置重点recaptacha输入领域的解决方案。



文章来源: Reload recaptcha on browser back button