2017-03-16 172 views
1

我在我的网站上添加了CaptchMe。
截图。如何删除验证码?

Screenshot

的问题是,有可能只有1 CaptchMe在同一页上。侧边栏包含在每个页面上。

解决方案在侧边栏关闭时移除边栏中的验证码,并显示页面上的标签。如果边栏打开并点击,则需要移除页面上的验证码并显示边栏上的标签。

我该怎么办?

要显示的验证码,我用

<?php echo captchme_generate_html($publicKey, $error, $ssl, $customAttributes); ?>

如果我在一个div添加它,我可以

document.getElementById("captcha").innerHTML = "";

删除内容

但之后,当侧边栏关闭时,我无法再显示它,因为div是空的。我不能做

document.getElementById("captcha").innerHTML = "<?php echo captchme_generate_html($publicKey, $error, $ssl, $customAttributes); ?> ";

因为这是不可能的。

谢谢你的帮助。

+3

多了一个元素你为什么不使用类似的验证码,可以支持上加2 CaptchMe多个验证码在网页上? https://developers.google.com/recaptcha/docs/display – Styphon

+2

因为Recaptcha不给钱:P – jejedu67

+0

这与问题无关,但...为了获得一些分钱而在登录表单中添加验证码是所以邪恶xD –

回答

0

要重新生成captacha,您应该能够将captcha PHP放入它自己的服务器文件中。 然后在php文件中使用JQuery .load()来进行AJAX调用,并将响应HTML直接加载到DOM中。

http://api.jquery.com/load/

+0

谢谢,这是一个非常好的主意。 使用javascript函数删除侧边栏。但是如何用javascript函数运行ajax函数? 对于为例, 功能closeSideBar(){ 代码以清除边栏 代码来运行AJAX功能,在div 添加php脚本} – jejedu67

+0

$(文件)。就绪(函数(){$ ( “span”)。click(function(){(“#captcha”)。load(“captchme.php”); }); }); \t function closeNav(){ \t document.getElementById(“captcha”)。innerHTML =“”; \t document.getElementById(“mySidenav”)。style.width =“350px”; } 它运行ajax函数,当我点击一个跨度,但如何在运行closeNav()时运行ajax函数? – jejedu67

0

我已经找到了一个非常简单的解决方案在5小时后... 我添加的登录形式在侧边栏直接在页面上的IFRAME和其它验证码(左)。

主页面是页面,iframe是其他页面。

我可以在同一页面:)

谢谢你的帮助,我学习jQuery的:)

+0

这更像是一种黑客而不是解决方案。只有野蛮人才使用内联框架来处理同一个域内的内容。 – Havenard