转载

步骤如下:

1.新建一个html页面,此处是ajax.html

2.新建一个servlet做后台处理

3.新建一个js页面,verify.js

ajax.HTML代码:

<html>
<head>
<title>用户校验ajax</title>
<script type="text/javascript" src="jslib/jquery.js"></script>
<script type="text/javascript" src="jslib/verify.js"></script>
</head>
<body>

用户校验的ajax实例, 请输入用户名:<br/>
<!-- ajax方式下不需要使用表单来进行数据提交,因此可以不写form-->
<!--ajax方式不不要name属性,需要一个id属性-->
<input type="text" id="userName"/>
<input type="button" value="校验" onclick="verify()"/>
<!--这个div用于存放服务器端返回的信息,开始为空-->
<!--id属性定义是为了利用dom的方式找到某一个节点,进行操作-->
<div id="result"></div>

</body>
</html>

说明:

这里面引入了jquery库文件,使用jquery可以省去大量的js代码,同时引入自定义的js文件verify.js。ajax方式下不需要使用表单进行数据提交,因此可以省去form,当然也可以写上去。ajax方式不需要name属性,但需要一个id属性,便于在js代码中通过id获得属性的值。在按钮处添加验证函数,取得验证信息。最后需要一个提示标签用于存放服务器返回的信息。此处用了<div>当然也可用用<span>标签,两者的区别是前者具有换行功能,后者不具备。前者常用语显示一句话,后者常用语显示一段话。

servlet代码:

public class AjaxServlet extends HttpServlet {

@Override
protected void doGet(HttpServletRequest request,HttpServletResponse response) throws servletexception,IOException {
try {
response.setContentType("text/html;charset=utf-8");
PrintWriter out = response.getWriter();

//1.取得页面参数信息
String old = request.getParameter("name");
//2.检查参数是否有问题
if (old == null || old.length() == 0) {
out.println("用户名不能为空");
} else {
//3.校验操作
String name = old;
if (name.equals("zqc")) {
//4.和传统应用不同之处,这一步需要将用户感兴趣的数据返回给页面,

//而不是跳转到一个新页面MDC模式
out.println("用户名[" + name + "]已经存在,请使用其他用户名");
} else {
out.println("用户名[" + name + "]尚未存在,可以使用该用户名");
}
}

} catch (Exception e) {
e.printstacktrace();
}

}

@Override
protected void doPost(HttpServletRequest httpServletRequest,HttpServletResponse httpServletResponse) throws servletexception,IOException {
doGet(httpServletRequest,httpServletResponse);
}
}

说明:

后台部分注意4点即可:代码中已注明。1.取得页面参数信息。2.检查产生是否有效。3.校验参数。4.显示信息。当然还需要处理页面编码问题,要不会出现乱码。

verify.js代码:

function verify(){
//首先测试一下页面的按钮按下,可以调用这个方法
//使用js的alert方法,显示一个弹出提示
//alert("按钮被点击了!!!");

//1.获取文本框中的内容
//document.getElementByIdx_x("userName"); dom的方式获得id
//jquery的方式获得页面节点,参数中#加上id属性值可以找到一个节点
//jquery的方法返回的都是jquery的对象,可以继续在上面只写其他的jquery对象
var jqueryObj = $("#userName") ;
//获得节点的值
var userName = jqueryObj.val();

//验证userName是否取到了
// alert(userName);
//2.将文本框中的数据发送给服务器端的servlet
//使用jquery的XMLHTTPrequest对象请求的封装
$.get("AjaxServlet?name=" + userName,null,callback);

}

//回调函数
function callback(data){
// alert("服务器端的数据回来了!");
//3.接收服务器端返回的数据
//alert(data);
//4.将服务器返回的数据动态显示到页面上
//找到保存结果信息的节点
var resultObj = $("#result");
//动态改变页面中div节点中的内容
resultObj.html(data);
说明:

此部分主要是4点:1.获取文本框中内容。2.将文本框中的数据发送给服务器端的servlet。3.接收服务器端返回的数据。4.将服务器返回的数据动态显示到页面上。这里使用了jquery的一些代码。可以到jquery的官网下载相关api和库文件。jquery官网:www.jquery.com

ajax实现表单用户名校验的更多相关文章

  1. HTML5新增form控件和表单属性实例代码详解

    这篇文章主要介绍了HTML5新增form控件和表单属性实例代码详解,需要的朋友可以参考下

  2. jquery点赞功能实现代码 点个赞吧!

    点赞功能很多地方都会出现,如何实现爱心点赞功能,这篇文章主要为大家详细介绍了jquery点赞功能实现代码,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

  3. wordpress添加Html5的表单验证required方法小结

    这篇文章主要介绍了wordpress添加Html5的表单验证required方法小结,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

  4. HTML5表单验证特性(知识点小结)

    这篇文章主要介绍了HTML5表单验证特性的一些知识点,本文通过实例代码截图的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

  5. 有没有办法知道购买哪个iTunes帐户? – iOS

    我的应用程序提供应用内购买非消耗类型.该应用程序具有登录功能.是否可以根据登录用户购买我的应用程序?

  6. ios – Apple应用程序内购买收据 – 在服务器端验证

    我想验证它,并确保这是独一无二的.我担心的是:如果有人会收到一张有效收据,他就可以破解我们的服务器端API,并使用相同的有效收据进行无限数量的应用内购买.我应该以某种方式解密并检查transaction_id的“原始”收据,即我发送给Apple进行验证的收据?

  7. ios – 服务器端接收验证失败时是否应该调用finishTransaction?

    我们应该调用finishTransaction吗?这导致无效的交易永远活在队列中?就像在这个问题上说的那样:iPhonein-apppurchase:receiptverificationButifyoufindoutthatareceiptisinvalid,youshouldfinishtheassociatedtransaction.Ifnot,youmayhaveextra-transactionslivingforeverinthetransactionqueue.Thatmeansthatea

  8. 在IOS9中的Cordova应用程序使用JQuery / Javascript的window.history问题

    在两个测试用例中唯一改变的是Cordova.js.解决方法我看到这是几个星期前,但我会发布这个,以防其他人遇到它.听起来它可能与iOS9中的哈希更改生成的导航事件有关.如果是这样,可以将其添加到index.html以禁用哈希侦听:

  9. iOS 5上的jQuery事件

    解决方法在Apple开发论坛上由一个人回答:我需要在将元素添加到DOM之后才绑定(),如下所示:

  10. 应用程序关闭时的iOS任务

    我正在构建一个应用程序,通过ajax将文件上传到服务器.问题是用户很可能有时不会有互联网连接,并且客户希望在用户重新连接时安排ajax调用.这可能是用户在离线时安排文件上传并关闭应用程序.应用程序关闭时可以进行ajax调用吗?

随机推荐

  1. xe-ajax-mock 前端虚拟服务

    最新版本见Github,点击查看历史版本基于XEAjax扩展的Mock虚拟服务插件;对于前后端分离的开发模式,ajax+mock使前端不再依赖后端接口开发效率更高。CDN使用script方式安装,XEAjaxMock会定义为全局变量生产环境请使用xe-ajax-mock.min.js,更小的压缩版本,可以带来更快的速度体验。

  2. vue 使用 xe-ajax

    安装完成后自动挂载在vue实例this.$ajaxCDN安装使用script方式安装,VXEAjax会定义为全局变量生产环境请使用vxe-ajax.min.js,更小的压缩版本,可以带来更快的速度体验。cdnjs获取最新版本点击浏览已发布的所有npm包源码unpkg获取最新版本点击浏览已发布的所有npm包源码AMD安装require.js安装示例ES6Module安装通过Vue.use()来全局安装示例./Home.vue

  3. AJAX POST数据中文乱码解决

    前端使用encodeURI进行编码后台java.net.URLDecoder进行解码编解码工具

  4. Koa2框架利用CORS完成跨域ajax请求

    实现跨域ajax请求的方式有很多,其中一个是利用CORS,而这个方法关键是在服务器端进行配置。本文仅对能够完成正常跨域ajax响应的,最基本的配置进行说明。这样OPTIONS请求就能够通过了。至此为止,相当于仅仅完成了预检,还没发送真正的请求呢。

  5. form提交时,ajax上传文件并更新到&lt;input&gt;中的value字段

  6. ajax的cache作用

    filePath="+escape;},error:{alert;}});解决方案:1.加cache:false2.url加随机数正常代码:网上高人解读:cache的作用就是第一次请求完毕之后,如果再次去请求,可以直接从缓存里面读取而不是再到服务器端读取。

  7. 浅谈ajax上传文件属性contentType = false

    默认值为contentType="application/x-www-form-urlencoded".在默认情况下,内容编码类型满足大多数情况。在这里,我们主要谈谈contentType=false.在使用ajax上传文件时:在其中先封装了一个formData对象,然后使用post方法将文件传给服务器。说到这,我们发现在JQueryajax()方法中我们使contentType=false,这不是冲突了吗?这就是因为当我们在form标签中设置了enctype=“multipart/form-data”,

  8. 909422229_ajaxFileUpload上传文件

    ajaxFileUpload.js很多同名的,因为做出来一个很容易。我上github搜AjaxFileUpload出来很多类似js。ajaxFileUpload是一个异步上传文件的jQuery插件传一个不知道什么版本的上来,以后不用到处找了。语法:$.ajaxFileUploadoptions参数说明:1、url上传处理程序地址。2,fileElementId需要上传的文件域的ID,即的ID。3,secureuri是否启用安全提交,默认为false。4,dataType服务器返回的数据类型。6,error

  9. AJAX-Cache:一款好用的Ajax缓存插件

    原文链接AJAX-Cache是什么Ajax是前端开发必不可少的数据获取手段,在频繁的异步请求业务中,我们往往需要利用“缓存”提升界面响应速度,减少网络资源占用。AJAX-Cache是一款jQuery缓存插件,可以为$.ajax()方法扩展缓存功能。

  10. jsf – Ajax update/render在已渲染属性的组件上不起作用

    我试图ajax更新一个有条件渲染的组件。我可以确保#{user}实际上是可用的。这是怎么引起的,我该如何解决呢?必须始终在ajax可以重新呈现之前呈现组件。Ajax正在使用JavaScriptdocument.getElementById()来查找需要更新的组件。但是如果JSF没有将组件放在第一位,那么JavaScript找不到要更新的内容。解决方案是简单地引用总是渲染的父组件。

返回
顶部