Ajax实现登录案例_AJAX相关

来源:脚本之家  责任编辑:小易  

a页面关键JS代码: function che(username,pwd){ $.ajax({ url:"b.aspx", type:"POST", data:{user:username,pwd:pwd}, dataType:"XML", success: function (data,status){ var count=$(data).find("num").text(); if(count==0){ //没有注册2113 $("#lab2").html("未注册,不能5261登录"); } else{ //已经注册 $("#lab2").html("可以登录"); …… } //else } //success }); //ajax }b页面4102中要返回xml数据,拼字符串就可以 string user = Request["user"].ToString(); //获取1653用户名 string pwd = Request["pwd"].ToString(); //获取密码 count=根据用户名和密码查询出来的记录数 //sql语句:select count(*) from login where username=user and password=pwd string str = "<?xml version='1.0' ?>"; str += "<num>" + count + "</num>";Response.Write(str); Response.End();更多追问追答追问那我是怎么知道count等于什么的?谢了追答int count=0;string sql = "select count(*) from login where username=“+user+“ and password=”+pwd; _Cmd.CommandText = sql; try { _Conn.Open(); count = Convert.ToInt32( _Cmd.ExecuteScalar()); } finally { _Conn.Close(); }string str = ""; str += "" + count + "";追问可是我的count是怎么传到a页面的呢?谢谢了追答b页面不用做别的 只是拼字符串 构成XML文档 a页面中直接从 success 的回调函数的 data 参数中取就行啊 本例中就是 var count=$(data).find("num").text();追问那到底怎么拼字符串啊!能详细点吗追答b页面代码:Page_Load 中 string user = Request["user"].ToString(); //获取用户名 string pwd = Request["pwd"].ToString(); //获取密码 int count=new LoginDA().Select(user,pwd); string str = ""; str += "" + count + "";Response.Write(str); Response.End(); 新建数据库操作类LoginDA.cspublic class LoginDA{ private SqlConnection _Conn; private SqlCommand _Cmd; private SqlDataReader _DR;public LoginDA(){ _Conn = new Connect().Conn; //数据库连接 这个你总该会吧 _Cmd = _Conn.CreateCommand();} public int Select(string name, string pwd) { int i = 0; _Cmd.CommandText = "select count(*) from login where username=@name and password=@pwd"; _Cmd.Parameters.Clear(); _Cmd.Parameters.AddWithValue("@name", name); _Cmd.Parameters.AddWithValue("@pwd", pwd); try { _Conn.Open(); i = Convert.ToInt32(_Cmd.ExecuteScalar()); } finally { _Conn.Close(); } return i; }},a页面为a.php,2113b页面为b.php那么在a.php中的js<script>function reg(){$.ajax({5261type: 'POST',url: 'b.php',data: {'username':name,'action':'ajax'},success: function(data){if(data=='2'){alert('已经注4102册过1653了');}else if(data=='1'){alert('可以注册');}else{alert('系统出错');}}});}</script>b.php<?php...$a=$_POST['action'];switch($a){ case 'ajax':$reg_name=$_POST['username'];$sql='select * from 用户表 where username='.$reg_name;...//执行查询,将结果赋值给$resif(empty($res)){exit('1');//证明还没有注册过}else{exit('2');//已经有人注册过}break;default:exit('3');break;}...?>追问我想在b页面中先判断txtName在数据库有没有记录,然后传给一个变量传给a页面,,,帮帮忙吧.....谢谢了追答$sql='select * from 用户表 where username='.$reg_name;...//执行查询,将结果赋值给$res//你就在这一句执行查询就行了啊,下面就是判断有没有记录,//然后传值给前台就是了,前台用data就能获得返回的数据success: function(data){希望能仔细点看代码www.zgxue.com防采集请勿采集本网。

Ajax登录案例,供大家参考,具体内容如下

在用户名input框添加onblur事件,触发函数 function XX(){ $.post(url:你的后台路径,{ “name”:“你的用户名” },function(data){//成功返回函数 if(data.status==success){ }else{ alert("失败");//或者创建一个span在用户名的input框后面,$('#sp

Msg

最简单也是最好的办法是:将所有jsp放到WEB-INF目录下。 但此时浏览器无法直接访问任何jsp。 也可以用过滤器来实现

package com.lbl.msg;public class Msg { String msg; int code; public Msg() { } public Msg(String msg, int code) { this.msg = msg; this.code = code; } public String getMsg() { return msg; } public void setMsg(String msg) { this.msg = msg; } public int getCode() { return code; } public void setCode(int code) { this.code = code; }}

post登录? 直接向服务器post 账号密码 外加 其它参数。

RegisterServlet

ajax异步请求登陆,写入或读取cookie或session,就可实现登陆了呀,其实很简单的!

package com.lbl.servlet;import com.fasterxml.jackson.databind.ObjectMapper;import com.lbl.msg.Msg;import javax.servlet.ServletException;import javax.servlet.annotation.WebServlet;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import java.io.IOException;@WebServlet("/register")public class RegisterServlet extends HttpServlet { protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { doGet(request, response); } protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { //1:获取请求发送的数据 String username = request.getParameter("username"); response.setContentType("text/html;charset=UTF-8"); //2:判断用户名是否注册 if("abc123".equals(username)){ Msg msg = new Msg("用户名已经注册",0); //用户名已经注册 {"flag":false,"info":"用户名已经注册"};// String jsonStr = "{\"flag\":false,\"info\":\"用户名已经注册\"}"; //响应回浏览器 response.getWriter().write(new ObjectMapper().writeValueAsString(msg)); }else{ Msg msg = new Msg("可以注册",1); //用户名没有注册// String jsonStr = "{\"flag\":true,\"info\":\"可以注册\"}"; //响应回浏览器 response.getWriter().write(new ObjectMapper().writeValueAsString(msg)); } }}

管理后台登陆 今天是:getmyDate();             用户名:   密码:   验证码:   说明: 登陆信息区分大小写,请注意填写。 版权所有 © 2006-2007 ,保留一切权利。 其中的 就是ajax验证的

json_register.html

<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Title</title> <script src="js/jquery-3.3.1.js"></script> <script type="application/javascript"> $(function () { //1: 给用户名输入框绑定失去焦点事件(onfocus onblur) $("#username").on("blur",function () { //获取用户名输入框数据 var username = $("#username").val(); //2:向服务器发出异步请求,让服务器去查询用户名是否存在 $.post( "register", //表示服务器的servlet路径 "username="+username, //表示向服务器发送的数据 function (data) { // msg:用户名已经注册 code:0 if(data.code==0){ // alert(data.info); $("#spanId").html(data.msg).css("color","green"); }else { $("#spanId").html(data.msg).css("color","red"); } }, "json" ); }); }); </script></head><body><div> <font>会员注册</font>USER REGISTER <form class="form-horizontal" style="margin-top: 5px;"> <table> <tr> <td>用户名</td> <td> <input type="text" id="username" name="username" placeholder="请输入用户名"> <span id="spanId"></span> </td> </tr> <tr> <td>密码</td> <td> <input type="password" placeholder="请输入密码"> </td> </tr> </table> <input type="submit" value="注册"/> </form></div></body></html>

运行效果:

实现思路就是通过ajax的固定格式2113去访问Action中对应的5261“LoginAction”方法。之后查询数据库,4102根据结果返回情况来判断是否1653可以登录。//登录方法function login(){if(validParams()){$.ajax({ url:EossGlobal.basePath + '/login/loginIn.action', data: 'userId='+$('#userId').val()+'&userPwd='+$('#userPwd').val()+'&', type: 'POST',dataType : "json", error:function (XMLHttpRequest, textStatus, errorThrown) { // checkRestfulError(XMLHttpRequest, error, questionFailed); }, success:function (data, textStatus) {//如果返回结果成功表示查询成功 if(data.flag){//返回结果标志位为true,那么说明登录用户存在 $('#warnInfo').hide();window.location.href = EossGlobal.basePath + '/system/layout/index.jsp';}else{$('#warnInfo').html(data.msg);$('#warnInfo').show();} } });}},不行,由于是ajax发起的2113请求5261,所以在执行你的Action的时候也是4102在本次请求的处理范围内。如果这样1653跳转,那ajax最后获得的结果就是info.jsp执行的结果。所以必须在ajax的onreadystatechange事件中分析服务器返回的结果并使用window.location跳转链接本回答被提问者和网友采纳,erererererere内容来自www.zgxue.com请勿采集。


  • 本文相关:
  • jquery通过ajax向php服务端发送请求并返回json数据
  • ajax三级联动下拉菜单效果
  • ajax二级联动菜单实现原理及代码
  • ajax初级教程之获取博文列表
  • 甩掉ashx和asmx使用jquery.ajaxwebservice请求webmethod简练处理
  • ajax中用josnp接收josn数据的实现方法
  • 基于ajax的简单搜索实现方法
  • ajax技术组成与核心原理分析
  • ajax和dom的运行经验
  • ajax+php中文乱码解决办法
  • Java/Ajax:关于Ajax实现登录功能
  • 利用 jquery ajax做一个用户登录界面
  • Java/Ajax:使用Ajax实现登录功能,可以实现跳转吗?
  • 写一个登录页面,用jQuery的ajax提交登录信息
  • jquery+ajax+onblur实现注册登录
  • 关于jsp中用jQuery,ajax做的用户登录,怎么实现权限?
  • ajax+jquery怎么实现登录
  • ajax+jquery怎么实现登录
  • ajax实现用户验证登录并跳转至个人页面
  • jsp+ajax实现 注册、登录功能。
  • 网站首页网页制作脚本下载服务器操作系统网站运营平面设计媒体动画电脑基础硬件教程网络安全javascriptasp.netphp编程ajax相关正则表达式asp编程jsp编程编程10000问css/htmlflex脚本加解密web2.0xml/rss网页编辑器相关技巧安全相关网页播放器其它综合dart首页一款经典的ajax登录页面 后台asp.netajax异步方式实现登录与验证ajax 实现微信网页授权登录的方法ajax实现登录功能ajax实现带有验证码的局部刷新登录界面div弹出层的ajax登录(jquery版+c#)ajax session失效跳转登录页面的方法ajax编写简单的登录页面ajax实现漂亮、安全的登录界面登录超时给出提示跳到登录页面(ajax、导入、导出)jquery通过ajax向php服务端发送请求并返回json数据ajax三级联动下拉菜单效果ajax二级联动菜单实现原理及代码ajax初级教程之获取博文列表甩掉ashx和asmx使用jquery.ajaxwebservice请求webmethod简练处理ajax中用josnp接收josn数据的实现方法基于ajax的简单搜索实现方法ajax技术组成与核心原理分析ajax和dom的运行经验ajax+php中文乱码解决办法jquery ajax 向后台传递数组参数ajax readystate的五种状态详解ajax中的async属性值之同步和异步jquery实现ajax定时刷新局部页面ajax传递多个参数具体实现ajax获取数据中文乱码问题最简单jquery ajax中使用serialize()方ajax获取数据然后显示在页面的实自己动手打造ajax图片上传(网上没ajax 缓存问题的两种解决方法(ie基于ajax技术实现考试倒计时并自动提交试通过ajax进行post提交json数据的方法ajax实现页面自动刷新实例解析ajax如何进行跨域请求?ajax跨域请求的原理ajax上传图片及上传前先预览功能实例代码ajax读取properties资源文件数据的方法发布三个ajax相关的函数,包括无刷新提交ajax 通过城市名获取数据(全国天气预报apajax+js实现异步交互ajax在gb2312的中文编码传输 ajax特殊字符
    免责声明 - 关于我们 - 联系我们 - 广告联系 - 友情链接 - 帮助中心 - 频道导航
    Copyright © 2017 www.zgxue.com All Rights Reserved