js中ajax项目实例教程,原生js中ajax访问的实例详解

原生js中ajax访问的实例详解

form表单中

登录名:

失去光标即触发事件

function createXmlHttp() {

var xmlHttp;

try { // Firefox, Opera 8.0+, Safari

xmlHttp = new XMLHttpRequest();

}

catch (e) {

try {// Internet Explorer

xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");

}

catch (e) {

try {

xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");

}

catch (e) { }

}

}

return xmlHttp;

}

function infoCheck(){

var ename=document.getElementById("ename").value;

var password=document.getElementById("password").value;

var pwdConfirm=document.getElementById("pwdConfirm").value;

if(password!=pwdConfirm){

alert("两次密码不统一");

return ;

}

//验证登录用户名是否存在,类似的可以验证手机号什么的

// 1.创建异步对象

var xhr = createXmlHttp();

xhr.onreadystatechange = function () {

if (xhr.readyState === 4 && xhr.status === 200) {

// var data = new Function("return" + xhr.responseText)()//反序列化

var val=xhr.responseText;

if(val==1){

document.getElementById("ch").innerHTML="重新设置名字";

document.getElementById("ename").focus();

return;

}else{

document.getElementById("ch").innerHTML="";

}

}

}

xhr.open("post", 'LoginController/checkEname?ename='+escape(encodeURIComponent(ename)), true);

//发送

xhr.send(null);

}

在返回xhr.responseText数据时,中文有乱码的体现,尚未解决,所以为了只管体现,我让后台返回的是“0”或者“1”来做判断,je中createXmlHttp()这个方法以前看老师讲过,但是还是不理解,目前仿照这写吧,功能实现了,这也是看到的最简单的版本实现原生态ajax,整个ajax访问流程还是比较好理解,提交访问数据的时候也存在乱码问题

web项目乱码的问题解决方案

开始的web项目整体以post方式提交,xml文件中加入以下编码过滤器

encodingFilter

org.springframework.web.filter.CharacterEncodingFilter

encoding

utf-8

forceEncoding

true

encodingFilter

/*

提交的时候

剩下的 小部分的乱码可以用编码在解码的方式获得正确数据

编码:'LoginController/checkEname?ename='+escape(encodeURIComponent(ename))

解码:try {

String str=URLDecoder.decode(ename, "utf-8");

ename=URLDecoder.decode(ename, "utf-8");

} catch (UnsupportedEncodingException e) {

e.printStackTrace();

}

后面写入数据库的时候乱码问题,我个人先创数据库编码是utf8,项目的编码也是utf-8,避免其他的编码问题发生,在连接数据库的URL也加上

url=jdbc:mysql://localhost:3306/ssm?useUnicode=true&characterEncoding=utf8

目前碰到的乱码问题已经解决(除开ajax返回数据乱码,这个目前没找到解决方案)

在来说下原生js非空验证和button点击提交功能

姓名:

登录名:

密码:

密码确定:

function submitInfo(){

var name=document.getElementById("name").value;

var ename=document.getElementById("ename").value;

var password=document.getElementById("password").value;

var pwdConfirm=document.getElementById("pwdConfirm").value;

//针对空格和制表符的""能做到过滤

name=name.replace(/(^\s*)|(\s*$)/g, "");

ename=ename.replace(/(^\s*)|(\s*$)/g, "");

password=password.replace(/(^\s*)|(\s*$)/g, "");

pwdConfirm=pwdConfirm.replace(/(^\s*)|(\s*$)/g, "");

if(name.length==0||name==" "||name.langth=="undefined") {

//alert(name.langth);

//alert(111);

alert("姓名为必填项");

return ;

}

if(ename.length==0||ename==" "||ename.langth=="undefined") {

alert("登录名为必填项");

return ;

}

if(password.length==0||password==" "||password.langth=="undefined") {

alert("密码为必填项");

return;

}

if(password!=pwdConfirm){

alert("两次密码不统一");

return ;

}

document.getElementById("form").submit();

}

后面继续加瓦,完善,所有代码在之前的基于注解spring4.,mybatis3.最简单的SSM整合 连接地址中,代码持续更新

如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
经典案例,带数据库脚本、Java源文件和页面源文件。有演示效果,也可以自己部署看效果。以下是案例的目录。 1-1.EXE 动态加载的FAQ实例演示 1-2.EXE 根据邮政编码获取地区信息实例演示 1-3.EXE 动态树形列表实例演示 1-4.EXE 多级联动菜单实例演示 1-5.EXE 条件设置向导实例演示 1-6.EXE 页面关键词提示实例演示 2-1.EXE 无刷新显示回帖实例演示 2-2.EXE 输入内容前提示实例演示 2-3.EXE 带进度的文件上传实例演示 2-4.EXE 大量数据动态浏览查询实例演示 2-5.EXE 信息排序实例演示 2-6.EXE 切换标签页实例演示 3-1.EXE 注册表单验证实例演示 3-2.EXE 购物车实例演示 3-3.EXE 产品快速检索实例演示 3-4.EXE 系列产品特性速查实例演示 3-5.EXE 邮件订阅实例演示 3-6.EXE 产品评级实例演示 4-1.EXE 简单计算器实例演示 4-2.EXE 文章拼写检查实例演示 4-3.EXE 拼词游戏实例演示 4-4.EXE 在线词典实例演示 4-5.EXE 远程网页源代码读取实例演示 5-1.EXE 相册浏览实例演示 5-2.EXE 幻灯片实例演示 5-3.EXE 灯箱效果实例演示 5-4.EXE 聊天室实例演示 6-1.EXE 自动登录实例演示 6-2.EXE 自动保存草稿实例演示 6-3.EXE 实时更新的股价实例演示 6-4.EXE 提前加载分页文章实例演示 7-1.EXE 获取服务器当前时间实例演示 7-2.EXE 远程PING服务器实例演示 7-3.EXE 服务器监测系统实例演示 7-4.EXE 使用滑动栏设置参数实例演示 8-1.EXE RSS阅读器实例演示 8-2.EXE 天气情况查询实例演示 8-3.EXE 访问搜索服务实例演示 8-4.EXE 读取Amazon产品目录实例演示 9-1.EXE 名片册实例演示 9-2.EXE 自定义个人门户实例演示 9-3.EXE 个人任务管理实例演示 9-4.EXE 许愿墙实例演示 9-5.EXE 日程表实例演示 9-6.EXE 考试系统实例演示
ajax经典实例+代码大全 绝对经典 -------- 目录说明 -------- database 目录存放数据库SQL文件 java 目录存放java源文件 webapp 目录存放实例页面及JSP源文件 -------------- 数据库安装说明 -------------- 了解MySQL的用户可以直接使用自己熟悉的方式创建名为ajax的数据库,并将ajax.sql文件导入即可。 下面是简要操作方法: 1. 实例数据库在MySQL 5.0.27 版本下测试通过 2. 将database目录ajax.sql文件复制到C:\ 3. 进入MySQL安装目录的bin目录 4. 输入 mysql -u root -p ,然后输入密码登录本地MySQL服务器 5. 输入 CREATE DATABASE ajax DEFAULT CHARACTER SET utf8; 创建名为ajax的数据库 6. 输入 use ajax 7. 输入 source c:\ajax.sql 执行数据库初始化语句 ------------------ Java源文件使用说明 ------------------ 实例大部分文件为HTML及JSP文件,部分Java源文件存放在java目录。 可将目录的内容作为Eclipse的一个项目导入Eclipse使用。 ----------- WEB发布方法 ----------- 所有实例在jdk 1.4.2 + Tomcat 5.0.28 环境下测试通过。 将webapp目录的内容复制到Tomcat的webapps目录作为一个web应用发布即可。 启动Tomcat前注意修改 ajax/WEB-INF/classes/ajax_db.properties 文件。 将其的URL、USER和PASSWORD属性根据实际情况进行修改。 Tomcat正常启动后使用 http://localhost:8080/ajax 进行访问 +=========================================================================================== 最后注释: 可能还有一点,就是把你的ajax密码定位好 路径是:${ajax}\ajax\WEB-INF\classes\ajax_db.properties,用记事本打开。那个${ajax}就是你当前存放ajax这个文件夹的路 径 DRIVERS=com.mysql.jdbc.Driver URL=jdbc:mysql://localhost/ajax?useUnicode=true&characterEncoding=utf8 USER=root PASSWORD=ajax 里面的代码是这样写的,把最后一行的那个对应的密码改为你自己数据库的代码就OK
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值