做这个登录呢,我用到一个第三方的JqueryUI,这个开源的JueryUI里面有一个对话框dialog,里面的登录层已经封装好了。下面就来说说把实现登录

1.先把第三方的东西拿过来

  1. <link href="../Css/jquery-ui-1.8.2.custom.css" rel="stylesheet" type="text/css" />
  2. <script src="../member/js/jquery-1.7.2.js" type="text/javascript"></script>
  3. <script src="../SWFUpload/jquery-ui-1.8.2.custom.min.js" type="text/javascript"></script>

2.把html表单给弄出来

  1. <body>
  2. <form id="form1" runat="server">
  3. <div>
  4. <div>
  5. <div id="divLogin" style="display: none">
  6. <a id="linkUserName"></a><a id="linkLogout" href="void(0)"< /span>>注销</a>
  7. </div>
  8. <div id="divNotLogin" style="display: none">
  9. <a href="void(0)"< /span> id="linkLogin">登录</a>
  10. </div>
  11. <div id="dlgLogin" style="display: none">
  12. 用户名:<input type="text" id="txtLoginUserName" /><br />
  13. 密码:<input type="password" id="txtLoginPassword" /><br />
  14. <div id="divLoginMsg" style="color: Red">
  15. </div>
  16. <br />
  17. <input type="button" id="btnLogin" value="登录" />
  18. </div>
  19. </div>
  20. </form>
  21. </body>
|||||现在我们写Jquery代码
  1. <script type="text/javascript">
  2. $(function(){
  3. CheckLogin();//调用检查用户是否登录的方法
  4. //当用户点击这个登录按钮的时候
  5. $("#btnLogin").click(function(){
  6. userLogin();//调用用户登录的方法
  7. location.href="/member/BookShow_UI.aspx";//登录成功转向这个页面
  8. });
  9. //这个是JqueryUI里面封装好的一个点击事件
  10. $("#linkLogin").click(function () {
  11. $("#dlgLogin").dialog({
  12. modal: true,
  13. buttons: {
  14. Ok: function () {
  15. $(this).dialog('close');
  16. }
  17. }
  18. });
  19. });
  20. //用户登录
  21. function userLogin(){
  22. //先收集用户在文本框里面输入的值
  23. var name=$("#txtLoginUserName").val();
  24. var pwd=$("#txtLoginPassword").val();
  25. //判断用户输入的不能为空
  26. if(name!="" && pwd!=null){
  27. $.post("/ashx/Login.ashx",{"action":"login","textName":name,"textPwd":pwd},function(data){
  28. var str=data.split(":");
  29. var s = data.split(":");
  30. if (s[0] == "0k") {
  31. $("#divLogin").show();
  32. $("#linkUserName").text(s[1]);
  33. //把层关闭
  34. $("#dlgLogin").dialog('close');
  35. $("#divNotLogin").hide();
  36. $("#dlgLogin").hide();
  37. } else if (s[0] == "no") {
  38. $("#divLogin").hide();
  39. $("#divNotLogin").show();
  40. } else {
  41. alert("错误咯");
  42. return false;
  43. }
  44. });
  45. }
  46. };
  47. //检查用户是否登录了
  48. function CheckLogin() {
  49. $.post("/ashx/Login.ashx", { "action": "check" }, function (data) {
  50. var s = data.split(":");
  51. if (s[0] == "ok") {//ok表示已经登录了
  52. $("#divLogin").show();
  53. $("#linkUserName").text(s[1]);
  54. $("#divNotLogin").hide();
  55. $("#dlgLogin").hide();
  56. } else if (s[0] == "no") {
  57. $("#divLogin").hide();
  58. $("#divNotLogin").show();
  59. } else {
  60. alert("错误咯!!");
  61. }
  62. });
  63. }
  64. </scirpt>
========================================一般处理程序
在一般处理程序里面要存储用户的信息,Seesion["User"]=user,在一般处理程序里面要存储用户的帐号与密码
到Session里面。在一般处理程序里面必须要实现一个接口 System.Web.SessionSatae.IRequiresSessionState
1.先来接收到前台是选择的是  check检查用户是否登录   login用户以登录
string action=context.Request.Form["action"];//来取到是check还是login
//如果说用户是第一次登录的页面,就要检查此用户是否存在
  1. if(action=="check"){
  2. //判断用户是否存在
  3. if(context.Session["User"]!=null)
  4. {
  5. //我们就要把用户的帐与密码取出来存在Seesion中
  6. context.Response.Write("ok:"+(((Model.User)context.Session["User"])).LoginId);
  7. }else{
  8. context.Response.Write("no:");
  9. }
  10. }else if(action=="login"){
  11. //取到用户有前台文本框里面输入的值
  12. string textName=context.Request.Form["textName"];
  13. string textPwd=context.Request.Form["textPwd"];
  14. //创建一个BLL层
  15. BLL.UserManger bll=new BLL.UserManager();
  16. //创建一个Model实体对象
  17. Model.User model=null;
  18. //创建一个用户登录的状态
  19. string msg=string.Empty;
  20. //定义一个变量来接收在bll层里面的用户登录的判断
  21. bool b=bll.GetCheckUserLogin(textName,textPwd,out msg,out model);
  22. //判断这个b是否为true;
  23. if(b){
  24. context.Session["User"]=model;
  25. context.Response.Write("ok:"+model.LoginId);
  26. }else{
  27. context.Response.Write("on:");
  28. }
  29. }
  在一般处理程序里面有一个方法是用来检查用户登录的状态在bll层里面来定义一个这样的方法GetCheckUserLogin(string name,string pwd,out string msg,out Model.User user)
  1. //定义一个用户来判断是否登录了参数用到了用户帐号用户密码状态和当前登录的用户名
  2. public bool GetCheckUserLogin(string name,string pwd,out string msg out Model.User user)
  3. {
  4. //创建一个DAL层对象
  5. DAL.UserServices dal=new DAL.UserServices();
  6. user=dal.GetModel(name);//判断用户帐与数据里面取到的是否相等  这个是用动软生成的 直接调用里面的这个取用户实体的对象方法
  7. //如果说这个用户不存在
  8. if(user!=null)
  9. {
  10. //判断用户的登录状态是否正常  这是在数据库里面
  11. if(user.UserState.Name=="正常")
  12. {
  13. //判断用户的密码是否与数据库里面的一样
  14. if(user.LoginPwd=="pwd")
  15. {
  16. msg="登录成功";
  17. return true;
  18. }else{
  19. msg="用户名或者密码错误";
  20. return false;
  21. }
  22. }else{
  23. msg="用户没有激活";
  24. return false;
  25. }
  26. }else{
  27. msg="用户不存在";
  28. return false;
  29. }
  30. }

转载于:https://blog.51cto.com/fourleafclover/1125154

Ajax异步请求登录相关推荐

  1. php 返回字符串给aja,解决ajax异步请求返回的是字符串问题

    1.返回结果差异 js获取后打印res.code无结果.因为返回数据格式不正确. php文件添加header头: header('Content-Type:application/json;'); 或 ...

  2. html弹窗赋值给查询框,bootstrap模态框动态赋值, ajax异步请求数据后给id为queryInfo的模态框赋值并弹出模态框(JS)...

    /查询单个 function query(id) { $.ajax({ url : "/small/productServlet", async : true, type : &q ...

  3. Ajax异步请求-简单模版

    1 <script type="text/javascript"> 2 window.onload = function () { 3 document.getElem ...

  4. php中jquery ajax请求参数,浅谈Jquery中Ajax异步请求中的async参数的作用

    之前不知道这个参数的作用,上网找了前辈的博客,在此收录到自己的博客,希望能帮到更多的朋友: test.html asy.js function testAsync{ var temp; $.ajax( ...

  5. Ajax(异步请求)和传统(同步请求)区别

    在服务器端判断request来自Ajax请求(异步)还是传统请求(同步): 两种请求在请求的Header不同,Ajax 异步请求比传统的同步请求多了一个头参数 1.传统同步请求参数 accept  t ...

  6. Ajax异步请求(重渲染DOM元素时,如何自动调用并执行JS自定义函数【含代码】)- 案例篇

    文章目录 Ajax异步请求(重渲染DOM元素时,如何自动调用并执行JS自定义函数[含代码])- 案例篇 效果截图: 重要代码: 附:全部HTML代码: Ajax异步请求(重渲染DOM元素时,如何自动调 ...

  7. JAVA中.jsp模板文件AJAX异步请求 - 数据渲染问题

    JAVA中.jsp模板文件AJAX异步请求 - 数据渲染失败,谁的过失? 后端已经查询出来结果,但是返回的API接口response查看不到对应的信息.(即:后台有,前台没有) 原因分析: 是因为AJ ...

  8. maven工程 java 实现文件上传 SSM ajax异步请求上传

    java ssm框架实现文件上传 实现:单文件上传.多文件上传(单选和多选),并且用 ajax 异步刷新,在当前界面显示上传的文件 首先springmvc的配置文件要配置上传文件解析器: 1 < ...

  9. php原生的异步请求,原生JavaScript实现Ajax异步请求

    ajax现在是一种非常流行的技术,现在虽然可以利用JQuery或者一些第三方插件甚至微软提供的一些控件可以方面的实现ajax功能,但是明白其原理也是非常重要的,下面是来使用纯javascript实现获 ...

最新文章

  1. git安装+错误:Failed to install ‘IRkernel‘ from GitHub: Git does not seem to be installed on your system
  2. 若依前后端分离版怎样根据数据库生成代码并快速实现某业务的增删改查
  3. Cetos 7 系统安装备注事项
  4. MySQL数据库的用户授权_查看权限
  5. 一些dos下简单命令
  6. OSPF——多区域概念及配置、ABR简介、ASBR简介、路由重分发
  7. eclipse 装配server时找不到tomcat
  8. 快手抖音短视频如何解析去除视频水印
  9. Apollo学习笔记(5)module canbus
  10. 237Echarts - 3D 柱状图(Image to Bar3D)
  11. 互联网商业化中,广告策略到底有哪些?(一)
  12. 《Adobe Photoshop CS4中文版经典教程》目录—导读
  13. 网卡配置里NM_CONTROLLED的意思
  14. 新的一年,红包走起!
  15. ps批量把文件名添加到图像_自动为带有文件名的投资组合图像添加字幕
  16. 什么是响应式布局设计?
  17. 常用FPGA相关的网址资源
  18. 有一个很棒的想法,如何向老板证明你是对的
  19. Web前端之过渡与动画
  20. 计算机技术与软件(初级、中级、高级)-领国家补贴

热门文章

  1. centos 6.5 安装openssl
  2. SQL Server 磁盘空间告急(磁盘扩容)转载
  3. J - Max Sum
  4. SQLServer 客户端远程访问配置
  5. zoj3381 Osaisen Choudai!
  6. HTML5 canvas 初级入门教程【转】
  7. Cooperative Content Distribution and Traffic Engineering
  8. PMCAFF微课堂 | 产品汪如何做好“时间管理”让效率提高100倍
  9. PMCAFF问答精选 | 程序员转型产品经理真的明智吗?
  10. IOS用户界面的新视觉比例