[ABI 5.1] ABi自定义登陆页验证码问题

9615
9

kira110 数据达人Lv4

发表于2020-8-5 11:43

悬赏50

已解决

楼主
大神们好,我按照社区中的发放重新自定义了登陆页面,并使用了验证码功能  原帖:http://bbs.esensoft.com/forum.php?mod=viewthread&tid=134397
效果如下:

不过有个小问题。。。就是这样的话,我每次登陆的时候都要输入验证码,即使是正确的密码。。。
我在系统管理-用户权限-高级设置-密码安全设置 开启了错误时验证码。那个是不是只针对默认登陆界面有效的呢?
自定义登陆页我该如何设置只有错误的时候才出现验证码呢?
求大神们提供个脚本或者方法感激不尽~

最近看过此主题的会员

18600922432

pandabuxizao

zhouxm

最佳答案
kira110 发表于 2020-8-5 14:39
加载完成:getElement = function(nms) {
    var obj = $p.$(nms);
    return obj.get("input") || obj ...

我本地按着做了一下,这个帖子的脚本只满足配置验证码功能好直接显示,后续不论是否输入错误都是需要输入验证码的,这里不太能改
9个回答

只看楼主

xxxl 数据领袖Lv6

发表于2020-8-5 11:56

只看该作者

取消 关注该作者的回复

沙发

http://bbs.esensoft.com/thread-134429-1-1.html这个方法的效果不就是密码错误的时候让输入吗

kira110 数据达人Lv4

发表于2020-8-5 11:59

只看该作者

取消 关注该作者的回复

板凳

xxxl 发表于 2020-8-5 11:56
http://bbs.esensoft.com/thread-134429-1-1.html这个方法的效果不就是密码错误的时候让输入吗 ...

打开页面的时候验证码就出来了,还没点登陆呢

xxxl 数据领袖Lv6

发表于2020-8-5 14:22

只看该作者

取消 关注该作者的回复

地板

kira110 发表于 2020-8-5 11:59
打开页面的时候验证码就出来了,还没点登陆呢

提供一下您的这个登录页的设置看看,按照这个帖子的教程应该是可以错误时候出现验证码,再者密码安全设置哪里进行设置的话默认登录界面会有验证码出现,自定义界面需要自己做

kira110 数据达人Lv4

发表于2020-8-5 14:39

只看该作者

取消 关注该作者的回复

5#

xxxl 发表于 2020-8-5 14:22
提供一下您的这个登录页的设置看看,按照这个帖子的教程应该是可以错误时候出现验证码,再者密码安全设置 ...

加载完成:getElement = function(nms) {
    var obj = $p.$(nms);
    return obj.get("input") || obj.get("widget_div");
};
//重写这个检查DOM的方法,因为该方法会更改用户名和密码框的样式
_validateLoginElements = function(){
    login_user = getElement("loginUser");
    login_pwd = getElement("loginPwd");
    login_bt = getElement("loginButton");
    login_error = getElement("loginError");
    login_error.className += ' form_point';
    //login_verify = null;//暂时不要验证码功能
    login_verify = getElement("loginVerify");
    _errortimes = 0;
    _verifycode = 0;
};
setupLoginForm();




自定义脚本:
var contextpath = EUI.sys.getContextPath();
EUI.include(contextpath + 'eacl/login/login.js');
EUI.include('eui/third/md5.js');

function showLoginErrorImpl(errormsg){
    var ediv = getElement(["loginError"]);
    if(!ediv) return;
    ediv.innerHTML = '';
    ediv.appendChild(doc.createElement("span"));
    ediv.appendChild(doc.createTextNode(errormsg));
    ediv.style.display = "block";
    reLoadVerify();

}

function reLoadVerify(){
    var verifycodeurl = EUI.getContextPath() + "eacl/verifycode.do";
    var div = getElement(["vcode_img"]);
    var img = div.firstElementChild;
    if(img){
        img.src = verifycodeurl + "?timestamp=" + new Date().getTime();
    }
}


输入框;


验证码;

这些0.0

xxxl 数据领袖Lv6

发表于2020-8-5 11:43

只看该作者

取消 关注该作者的回复

6#

kira110 发表于 2020-8-5 14:39
加载完成:getElement = function(nms) {
    var obj = $p.$(nms);
    return obj.get("input") || obj ...

我本地按着做了一下,这个帖子的脚本只满足配置验证码功能好直接显示,后续不论是否输入错误都是需要输入验证码的,这里不太能改

kira110 数据达人Lv4

发表于2020-8-5 16:22

只看该作者

取消 关注该作者的回复

7#

xxxl 发表于 2020-8-5 15:50
我本地按着做了一下,这个帖子的脚本只满足配置验证码功能好直接显示,后续不论是否输入错误都是需要输入 ...

是的呢,所以。。。还是求一个密码输入错误才出现验证码的脚本

xxxl 数据领袖Lv6

发表于2020-8-5 16:56

只看该作者

取消 关注该作者的回复

8#

kira110 发表于 2020-8-5 16:22
是的呢,所以。。。还是求一个密码输入错误才出现验证码的脚本56.gif

如果您有需要的话,可以走定制流程来做这样的效果

kira110 数据达人Lv4

发表于2020-8-5 18:41

只看该作者

取消 关注该作者的回复

9#

xxxl 发表于 2020-8-5 16:56
如果您有需要的话,可以走定制流程来做这样的效果

好的呢谢谢

kira110 数据达人Lv4

发表于2020-9-8 16:49

只看该作者

取消 关注该作者的回复

10#

xxxl 发表于 2020-8-5 16:56
如果您有需要的话,可以走定制流程来做这样的效果

您好,今天无意中发现,这个验证码还是存在问题:只要密码不为空,且密码正确,验证码只要不为空就能登陆。
比如验证码提示“hjkl” 但是我密码正确的情况下输入“ssss”也能成功登陆。

登录后可回答问题,请登录注册

快速回复 返回顶部 返回列表

小时

全天响应

分钟

快速处理问题

工程师强势助力

明星产品
解决方案
联系合作

400咨询:400-0011-866

技术支持QQ:400-0011-866(工作日9:00-18:00)

产品建议邮箱yixin@esensoft.com

关注我们

扫TA学习更多干货

一对一专家交流

版权所有© 2006-2024 北京亿信华辰软件有限责任公司 京ICP备07017321号 京公网安备11010802016281号