Ajax 用户名验证是否存在
下面我将为你呈现一个简单的表单验证例子,这个例子主要检查用户名是否已经存在,我们将使用Ajax来实现。让我们一步步了解这个过程。
当用户开始填写表单时,客户端会收集表单中的信息。这些信息中最重要的就是用户名。接下来,我们将使用XMLHttpRequest对象来提交这些信息到服务器。由于某些限制,我们不能在服务器端进行逻辑处理,因此我们将这部分逻辑移至浏览器端,由JavaScript来完成。服务器只需要提供一个用户名的列表。
效果展示如下:当你尝试输入“test”或“cainiao8”等用户名时,系统会提示你这些用户名已注册。
接下来,我们来分析JavaScript代码。当页面加载完毕后,我们为页面上的表单设置一个change事件的响应函数,名为ajaxValidate。代码如下:
```javascript
addEventSimple(window,'load',function(){
var test = document.getElementById('username');
addEventSimple(test,'change',ajaxValidate);
});
```
这样,每当用户在用户名文本框中输入内容时,ajaxValidate函数就会被调用。接下来是ajaxValidate函数的代码:
```javascript
function ajaxValidate(){
var options = {
url:'ajax/ajaxUsernames.xml',
listener:callback,
method:'GET'
}
var request = createRequest(options);
request.send(null);
}
```
这个函数会初始化一个XMLHttpRequest对象,并发送一个请求到服务器,请求的内容是ajaxUsernames.xml文件。
最重要的部分就是callback函数了:
```javascript
function callback(){
var xmlDoc = this.responseXML;
var root = xmlDoc.getElementsByTagName('root')[0];
var nodes = root.getElementsByTagName("username");
var currentNode = null;
var username = document.getElementById('username').value;
for(var i = 0; i < nodes.length; i++) {
currentNode = nodes[i];
if(username == currentNode.childNodes[0].nodeValue){
document.getElementById('test')nerHTML = '对不起!' + username + '已经被注册。';
return;
}
}
document.getElementById('test')nerHTML = '用户名' + username +'可以使用!';
}
```
这个函数会在已存在的用户名列表中搜索用户输入的名字,判断是否已经存在。如果用户名已存在,它会提示用户该用户名已被注册;如果用户名可用,则会告知用户可以使用。这个过程是通过浏览器端的JavaScript实现的,无需服务器处理逻辑。最后的部分`cambrian.render('body')`可能是用于渲染页面元素或组件的代码,但在此例中没有详细解释其功能和作用。
编程语言
- Ajax 用户名验证是否存在
- Ajax结合php实现二级联动
- JS集成fckeditor及判断内容是否为空的方法
- JQuery 的跨域方法推荐_可跨任何网站
- 纯JS实现出生日期[年月日]下拉菜单效果
- Angular父子组件通过服务传参的示例方法
- php面向对象重点知识分享
- 通过PHP自带的服务器来查看正则匹配结果的方法
- php实现微信公众号创建自定义菜单功能的实例代
- JavaScript常见的五种数组去重的方式
- 在JSTL EL中处理java.util.Map,及嵌套List的情况
- 利用transition实现文字上下抖动的效果
- jQuery实现对无序列表的排序功能(附demo源码下载
- asp.net 全部选中与取消操作,选中后的删除(ajax)实
- Yii2使用Bootbox插件实现自定义弹窗
- 浅析JS中回调函数及用法