注册页面中要检验用户名是否已经被注册,希望在文本框右边立刻显示“可以使用”或“已被注册”的字样。这是要引入数据库吗?怎么将输入的数据和数据库里面的数据作对比?
先用一个失去焦点事件吧,用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);//可用
}
})
JS获取文本值,然后异步(ajax)访问一个后台服务,后台服务查询数据库是否存在该用户名,如果存在,则已被注册,否则可以使用
输入框每次keyup时 将数据传到后台服务判断,查出count,如果 > 1则显示已存在
具体来说,你需要2个事件,1个隐藏的label,2个事件=>失去焦点与获得焦点时间,失去焦点进行Ajax验证,查看数据库是否存在该用户,回调:存在,就把隐藏的label显示,获得焦点,隐藏label
在文本框后面写一个,span,css 属性是隐藏。然后给文本框添加一个失去焦点事件,当失去焦点时,获取文本框的值,然后发送ajax ,到你的方法中,然后去数据库里查找,如果结果是查找导致,返回 false。如果没查找到返回true。 然后根据返回值给文本框后面span 里添加提示信息即可。
一般是需要的!可以通过使用jquery中$.ajax将其填写内容post或是get到后台处理程序中,将其内容与数据库做对比,判断count是否大于1,最后为其字段设置索引