首页 新闻 会员 周边 捐助

ajax技术的问题

0
悬赏园豆:40 [已解决问题] 解决于 2015-11-23 14:56

注册页面中要检验用户名是否已经被注册,希望在文本框右边立刻显示“可以使用”或“已被注册”的字样。这是要引入数据库吗?怎么将输入的数据和数据库里面的数据作对比?

hoofin的主页 hoofin | 初学一级 | 园豆:4
提问于:2015-10-19 23:31
< >
分享
最佳答案
1

先用一个失去焦点事件吧,用jquery获取到文本框的值,用ajax进行异步提交传值到后台,在后台进行判断值是否存在,如下:

bool result=查询方法。。。。

if(result==true)//存在

       return Json(new {IsSuccess=true,Msg="存在用户名"});

else

       return Json(new {IsSuccess=false,Msg="可用"});

//ajax操作

var 值=$("#文本框Id").val();

$.ajax({

  url:"你的路径(/控制器名/控制器方法)",

      type:"post",

      dataType:"json",

      data:{值:值,action:"控制器方法"}

       success:function(data)

       {

              if(data.IsSuccess==true)

                       alert(data.Msg);//存在

               else

                        alert(data.Msg);//可用

        }

})

收获园豆:40
如此低调的男人 | 小虾三级 |园豆:842 | 2015-10-20 09:40
其他回答(6)
0

JS获取文本值,然后异步(ajax)访问一个后台服务,后台服务查询数据库是否存在该用户名,如果存在,则已被注册,否则可以使用

JackWang-CUMT | 园豆:2866 (老鸟四级) | 2015-10-20 08:27
0

输入框每次keyup时 将数据传到后台服务判断,查出count,如果 > 1则显示已存在

伤心懒睡猪 | 园豆:346 (菜鸟二级) | 2015-10-20 09:18
0

具体来说,你需要2个事件,1个隐藏的label,2个事件=>失去焦点与获得焦点时间,失去焦点进行Ajax验证,查看数据库是否存在该用户,回调:存在,就把隐藏的label显示,获得焦点,隐藏label

稳稳的河 | 园豆:4216 (老鸟四级) | 2015-10-20 09:26
0

在文本框后面写一个,span,css 属性是隐藏。然后给文本框添加一个失去焦点事件,当失去焦点时,获取文本框的值,然后发送ajax ,到你的方法中,然后去数据库里查找,如果结果是查找导致,返回 false。如果没查找到返回true。  然后根据返回值给文本框后面span 里添加提示信息即可。

白瘦。 | 园豆:214 (菜鸟二级) | 2015-10-20 09:37
0

一般是需要的!可以通过使用jquery中$.ajax将其填写内容post或是get到后台处理程序中,将其内容与数据库做对比,判断count是否大于1,最后为其字段设置索引

24k-小清新 | 园豆:199 (初学一级) | 2015-10-20 10:05
0

你可以把注册写入onchange事件,再结合 @夕边日落的给出的方式,去做。就可以达到你需要的效果

Company | 园豆:32 (初学一级) | 2015-10-20 11:14
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册