起步软件技术论坛
搜索
 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 3009|回复: 18

[结贴] 判断用户是否存在,一直报错

[复制链接]

20

主题

75

帖子

129

积分

初级会员

Rank: 2

积分
129
QQ
发表于 2016-10-17 17:37:44 | 显示全部楼层 |阅读模式
本帖最后由 w874305584 于 2016-10-17 18:07 编辑

这是值
  1.                 var name = this.comp('inputName').value;                //账号
  2.                 var pwd = this.comp('InputPssword').value;             //密码
  3.                 var againPwd = this.comp('InputAgainPwd').value;  //再次输入密码
复制代码
  1.                 //判断账号是否存在
  2.                 var numName = this.comp("userData").find(['ACCOUNT'],[name]).length;
  3.                 if(numName === 0){
  4.                         //justep.Util.hint("该账户已经被注册!",{'type':'danger'});
  5.                         alert(numName);
  6.                         return;
  7.                 }
复制代码

提示为0,无论输入什么,都提示该账户已经注册,如果是1,他就跳过这个,直接注册成功!
2.png

提示为0,无论输入什么,都提示该账户已经注册,如果是1,他就跳过这个,直接注册成功!
3.png

数据库名称


`M2_F1$)OU8CNE6$LP_N1HD.png


1

主题

3232

帖子

1174

积分

金牌会员

Rank: 6Rank: 6

积分
1174
QQ
发表于 2016-10-17 17:52:44 | 显示全部楼层
思路就是 按照用户的唯一表示,去过滤数据,然后在用count 来判断有没有数据,具体你可以参考一下 放网易的注册功能/UI2/demo/netease
在问题解决后,希望大家可以吧解决方法也分享一下,这样可以让更多的X5开发者共同进步,谢谢大家的知识共享
回复 支持 反对

使用道具 举报

8

主题

131

帖子

311

积分

中级会员

Rank: 3Rank: 3

积分
311
QQ
发表于 2016-10-18 00:29:16 | 显示全部楼层
没见说报什么错啊?
回复 支持 反对

使用道具 举报

20

主题

75

帖子

129

积分

初级会员

Rank: 2

积分
129
QQ
 楼主| 发表于 2016-10-18 09:13:30 | 显示全部楼层
deltaboy 发表于 2016-10-18 00:29
没见说报什么错啊?

就是判断失败
回复 支持 反对

使用道具 举报

0

主题

27

帖子

107

积分

初级会员

Rank: 2

积分
107
QQ
发表于 2016-10-18 09:24:03 | 显示全部楼层
本帖最后由 李依荀 于 2016-10-18 09:27 编辑

简单,以前我也碰到过类似问题
原因是预加载数据小于数据库中存在的数据量,而使用find指令只判断已经加载到前台的数据。
解决方法两种,
1、恒保证你允许加载到前台的数据大于等于数据库的数据;
2、先执行过滤,然后进行判断符合过滤条件的加载到前台的数据条数即可。

还有就是你的逻辑判断是不是反了,应该时监测到数据库中无对应数据即0,为未注册,有数据即1为已注册
回复 支持 反对

使用道具 举报

20

主题

75

帖子

129

积分

初级会员

Rank: 2

积分
129
QQ
 楼主| 发表于 2016-10-18 09:30:43 | 显示全部楼层
李依荀 发表于 2016-10-18 09:24
简单,以前我也碰到过类似问题
原因是预加载数据小于数据库中存在的数据量,而使用find指令只判断已经加载 ...

如果是1,它就跳过这段代码,直接注册成功,就像没看见这条数据一样
回复 支持 反对

使用道具 举报

20

主题

75

帖子

129

积分

初级会员

Rank: 2

积分
129
QQ
 楼主| 发表于 2016-10-18 09:32:02 | 显示全部楼层
w874305584 发表于 2016-10-18 09:30
如果是1,它就跳过这段代码,直接注册成功,就像没看见这条数据一样

有相关代码吗?我能看看吗?
回复 支持 反对

使用道具 举报

0

主题

27

帖子

107

积分

初级会员

Rank: 2

积分
107
QQ
发表于 2016-10-18 09:44:34 | 显示全部楼层
var userData = this.comp("userData");
userData.filters.clear();
userData.setFilter(("userName","SQL过滤条件语句”);
userData.refresh();
然后在refresh刷新成功函数里获取加载过来的条数,即可判断处当前填写用户是否已经被注册了
回复 支持 反对

使用道具 举报

20

主题

75

帖子

129

积分

初级会员

Rank: 2

积分
129
QQ
 楼主| 发表于 2016-10-18 09:57:39 | 显示全部楼层
李依荀 发表于 2016-10-18 09:44
var userData = this.comp("userData");
userData.filters.clear();
userData.setFilter(("userName","SQL ...

好,谢谢
回复 支持 反对

使用道具 举报

0

主题

27

帖子

107

积分

初级会员

Rank: 2

积分
107
QQ
发表于 2016-10-18 10:19:14 | 显示全部楼层

不客气
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|X3技术论坛|Justep Inc.    

GMT+8, 2024-5-19 02:39 , Processed in 0.119033 second(s), 26 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

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