本帖最后由 御風 于 2014-1-8 21:13 编辑
在做CI的一个练习,做登录验证时,验证输入用户名后,应用Ajax进行验证,如果为空,则提示用户名不能为空,如果存在,则显示规则,如果用户名不存在,则提示用户名不存在,但是我在做时,为空的时候可以实现,当用户名不存在时却没提示
如图
此时cyys在数据库中不存在,但是页面没反应
页面的代码如下:
<html>
<head>
<title>用户登录</title>
<script type="text/javascript" src="../js/jquery-1.4.3.js"></script>
<script type="text/javascript" language="javascript">
var nameFlag=false;
$(function(){
$("#name").blur(function(){
var name=$(this).val();
if(name==null || name==""){
$("#nameMsg").text("用户名不能为空");
$("#nameMsg").addClass("required");
nameFlag=false;
return;
}else{
$("#nameMsg").text("长度为25以内的字符");
$("#nameMsg").removeClass("required");
nameFlag=true;
}
$.post(
"<?php echo site_url('user/checkName');?>",
{name:name},function(data){
if(!data){
$("#nameMsg").text("用户名不存在");
$("#nameMsg").addClass("required");
nameFlag=false;
}else{
$("#nameMsg").text("长度为25以内的字符");
$("#nameMsg").addClass("required");
nameFlag=true;
}
});
});
$("#pwd").blur(function(){
var pwd=$(this).val();
if(pwd==null || pwd==""){
$("#pwdMsg").text("密码不能为空");
$("#pwdMsg").addClass("required");
nameFlag=false;
return;
}else{
$("#pwdMsg").text("长度为25以内的字符");
$("#pwdMsg").removeClass("required");
nameFlag=true;
}
});
});
</script>
</head>
<body>
<div style="background-color: blue;color:white;
text-align: center;font-size: 30px" >用户登录</div>
<p align="center">请登录</p>
<div>
<form name="loginForm"
action="http://dev.test.cn/index.php/user/checkLogin"
id="loginForm" method="post">
<table align="center">
<tr>
<td>用户名:</td>
<td><input type="text" name="name"
id="name" ><span id="nameMsg" class="required"></span></td>
</tr>
<tr>
<td>密码:</td>
<td><input type="password" name="pwd"
id="pwd" "><span id="pwdMsg" class="required"></span></td>
</tr>
<tr>
<td></td>
<td><input id="submit" name="submit"
type="submit" value="登录">
<a >新用户注册</a></td>
</tr>
</table>
</form>
</div>
</body>
</html>
Controller里的代码如下:
function checkName(){
$this->load->model("user_model","",TRUE);
$this->user_model->check_name($_POST['name']);
}
model里的代码如下:
//检查用户名
function check_name($name){
$this->db->where($name);
$query=$this->db->get("user");
return $query->result();
}
求各位高手看看,哪里有错,敬请不吝赐教!!!
|