ajax实在是太神奇了,刚刚接触,不足之处,请大家指正。

采用Ajax方式进行页面无刷新提示,来检测用户名是否存在。

搭建一个thinkphp的环境,在index.html中,ajax代码如下:

<script type="text/javascript">
function checknickname(){
//① 抓取被校验的用户名信息
var nickname = document.getElementById("usernickname").value;
nickname = encodeURIComponent(nickname);//特殊字符处理 var ajaxObj = new XMLHttpRequest();
ajaxObj.onreadystatechange = function(){
if(ajaxObj.readyState==4){
document.getElementById('check').innerHTML = ajaxObj.responseText;
}
} //②ajax抓取到用户名的昵称传递给服务器 ajaxObj.open('GET','/thinkajax/index.php/Home/Index/checknicname?nickname=' + nickname);
ajaxObj.send(null);
}
</script>

html中:

<table align="center" border="0">
<tr>
<td>姓名:</td>
<td><input type="text" name="username"/></td>
</tr>
<tr>
<td>昵称:</td>
<td>
<input type="text" name="usernickname" id="usernickname" onblur="checknickname()"/>
<span id="check" style="color:red"></span>
</td> </tr>
<tr>
<td colspan="2" align="center"><input type="submit" value="提交"/></td>
</tr>
</table>

在后台处理:

/*
*用户昵称校验
*/
public function checknicname($nickname){
echo $nickname;
$info = D('user')->where("usernickname='$nickname'")->find();
if($info){
echo "用户名已经存在,请换一个吧";
}else{
echo "用户名正常使用!!";
}
exit;
}

数据库里面,数据如下:

操作界面如下:

在昵称中输入数据库中没有的数据,失去焦点:

在昵称中输入数据库中存在的数据,失去焦点:

thinkphp中ajax用户名校验的更多相关文章

  1. thinkphp中AJAX返回ajaxReturn()方法分析

    本文分析了thinkphp中AJAX返回ajaxReturn()方法.分享给大家供大家参考,具体如下: 系统支持任何的AJAX类库,Action类提供了ajaxReturn方法用于AJAX调用后返回数 ...

  2. thinkphp中ajax使用实例(thinkphp内置支持ajax)

    thinkphp中ajax使用实例(thinkphp内置支持ajax) 一.总结 1.thinkphp应该是内置支持ajax的,所以请求类型里面才会有是否是ajax // 是否为 Ajax 请求 if ...

  3. ajax用户名校验demo详解

    //用户名校验的方法 //这个方法使用XMLHTTPRequest对象进行AJAX的异步数据交互 var xmlhttp; function verify(){ //1.使用dom的方式获取文本框中的 ...

  4. ThinkPHP中ajax提交数据

    最近在做项目时遇到了一些需要从页面用ajax提交数据到后台的操作,无奈本人技术有限,网上苦寻,研究了一下ajax和thinkPHP的结合,黄天不负苦心人,终于搞定了. 闲话少叙,进入正题:我需要从页面 ...

  5. TP框架---thinkphp中ajax分页

    //点击类别后要显示的内容 public function pagechuli3()//这个方法的功能是根据ajax传过来的值查询数据,再将查询出来的数据返回到ajax,返回的默认是JSON类型. { ...

  6. ThinkPHP中ajax绑定select下拉框无法显示

    html代码: 控制器代码: 其中的<option value="{$vo.gradeId}">{$one.gradeName}</option> 在操作过 ...

  7. thinkphp中ajax技术

    thinkphp可以直接返回json数据,json数据事可以跟前端的js通用的

  8. thinkphp中ajax接收参数值

    if(IS_AJAX) { $oldpwd=I('param.oldpwd'); }

  9. thinkphp使用ajax

    thinkphp使用ajax和之前使用ajax的方法一样,不同点在于之前的ajax中的url指向了一个页面,而thinkphp里面的url需要指向一个操作方法. 一.thinkphp使用ajax返回数 ...

随机推荐

  1. hashCode() 和equals() 区别和作用

    HashSet和HashMap一直都是JDK中最常用的两个类,HashSet要求不能存储相同的对象,HashMap要求不能存储相同的键. 那么Java运行时环境是如何判断HashSet中相同对象.Ha ...

  2. Spark应用程序的运行框架

    几个基本概念: (1)job:包含多个task组成的并行计算,往往由action催生. (2)stage:job的调度单位. (3)task:被送到某个executor上的工作单元. (4)taskS ...

  3. 【Linux】鸟哥的Linux私房菜基础学习篇整理(二)

    1. dumpe2fs [-bh] devicename:查询superblock信息.参数:-b:列出保留为坏道的部分:-h:列出superblock的数据,不会列出其他的区段内容. 2. df [ ...

  4. LA3353

    感觉好久没做网络流这类的题目都不快会做了 网络流建模之前首先要分析性质 选择要求每个点恰属一个环就代表每个点在选择的图中,只有唯一入度和唯一出度 那就简单了,对n个点拆点,对于原图的边i-->j ...

  5. -_-#【CSS3】浏览器前缀

    前缀 浏览器 -khtml Konqueror(非常老的 Safari) -moz Firefox -o Opera -ms Internet Explorer -webkit Safari.Chro ...

  6. Android RSA加密对象数据

    前几天说了手头项目用MD5和双向加密DES来进行加密的,因为产品是在不断的改造中完善的.考虑到DES和MD5加解密还是会存下一定的风险,于是产品一拍,不行,听你们说MD5加密是不安全的,咱们产品以后做 ...

  7. 暴力求解——最大乘积 Maximum Product,UVa 11059

    最大乘积 Maximum Product 题目链接:http://acm.hust.edu.cn/vjudge/contest/view.action?cid=84562#problem/B 解题思路 ...

  8. zoj 3462

    #include <cstdio> #include <cmath> #include <algorithm> #include <iostream> ...

  9. UIView和CALayer有什么关系

    view是对layer的一种封装,你对view的很多操作事实上是对layer的操作,之所以会出现这两个东西是因为1.view支持很多手势的交互,你所操作iphone的各种点击,拖动等等.2.layer ...

  10. spring 定时器----quartz启动问题

    今天,突然要用到定时器,在网上查了下资料,保存下以方便后面查找: 什么是动态定时任务:是由客户制定生成的,服务端只知道该去执行什么任务,但任务的定时是不确定的(是由客户制定). 这样总不能修改配置文件 ...