返回顶部
首页 > 资讯 > 前端开发 > node.js >如何基于Ajax技术实现无刷新用户登录功能
  • 768
分享到

如何基于Ajax技术实现无刷新用户登录功能

2024-04-02 19:04:59 768人浏览 安东尼
摘要

这篇文章主要为大家展示了“如何基于ajax技术实现无刷新用户登录功能”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“如何基于Ajax技术实现无刷新用户登录功能”这

这篇文章主要为大家展示了“如何基于ajax技术实现无刷新用户登录功能”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“如何基于Ajax技术实现无刷新用户登录功能”这篇文章吧。

代码如下:

// jscript 文件
function usersLoGon()
{
  var userName = document.getElementById("txtuserName").value;
  var passWord = document.getElementById("txtpassword").value;
  var checkCode = document.getElementById("txtCheckCode").value;

  var response = userControl_logon.CheckCodeIsRight(checkCode).value;

  if(userName == "")
  {
    document.getElementById("txtuserName").focus();
    return false;
  }
  else if(password == "")
  {
    document.getElementById("txtpassword").focus();
    return false;
  }
  else if(checkCode =="")
  {
    document.getElementById("txtCheckCode").focus();
    return false;
  }
  else
  {
    if(response == true)
    {
      //判断用户是否存在
      userControl_logon.userNameAndPasswordIsExist(userName,password,userNameIsRight);
    }
    else
    {
      alert("验证码出错");
      userControl_logon.checkCodeOperaotr(refreshCheckCode);
      document.getElementById("txtpassword").value = "";
    }
  }  
}
function userNameIsRight(res)
{
  var userName = document.getElementById("txtuserName").value;
  if(res.value == true)
  {
    //用户存在,但要看此用户有没有进入管理留言版权限,
    userControl_logon.userNameIsRight(userName,CallBack);
  }
  else
  {
    alert("用户名或密码错误");
    document.getElementById("txtpassword").value = "";
    OnLoad_checkCode();
  }
}
function CallBack(res)
{
  if(res.value == true)
  {
    hideLogon();
    var url = userControl_logon.returnUrl();
    if ( url.value == 404)
    {
      showDefault();
    }
    else
    {
      document.getElementById("Url").innerhtml = '<a href="' + url.value + '">' + url.value + '</a>'
    }
  }
  else
  {
    alert("对不起你的权限不够");
    document.getElementById("txtpassword").value = "";
    OnLoad_checkCode();
  }
}
//隐藏登录框
function hideLogon()
{
  var element = document.getElementById("hideLogon")
  element.style.display = "none"
  
}
//显示返回首页
function showDefault()
{
  var element = document.getElementById("Returndefault")
  element.style.display = "block" 
}
function OnLoad_checkCode()
{
  userControl_logon.checkCodeOperaotr(refreshCheckCode);
  document.getElementById("txtuserName").focus();
  //  return false;
}
///重新得到新的验证吗
function refreshCheckCode(res)
{ 
  document.getElementById("txtCheckCode").value = "";
  document.getElementById("lblNumber").innerHTML = res.value;
}
function abce()
{
  alert(document.getElementById("lblNumber").value)
}

下面代码

using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.WEB;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Drawing;
using LHB_sql_2005;

public partial class userControl_logon : System.Web.UI.UserControl
{
  protected void Page_Load(object sender, EventArgs e)
  {
    if (!this.IsPostBack)
    {
      AjaxPro.Utility.ReGISterTypeForAjax(typeof(userControl_logon));
    }
  }

  [AjaxPro.AjaxMethod]
  public static string checkCodeOperaotr()
  {
    string _checkCode = GeneralMethod.GenerateCheckCode();
    System.Web.HttpContext.Current.Session["checkCode"] = _checkCode;
    //返回验证码
    return _checkCode;
  }

  /// <summary>
  /// 判断验证是否正确
  /// </summary>
  /// <param name="checkCode"></param>
  /// <returns></returns>
  [AjaxPro.AjaxMethod]
  public static bool CheckCodeIsRight(string checkCode)
  {
    string _checkCode = (string)(System.Web.HttpContext.Current.Session["checkCode"]); 
    if (_checkCode == checkCode)
    {
      return true;
    }
    else
    {
      return false;
    }
  }
  /// <summary>
  /// 判断用户名及密码添加是否正确
  /// </summary>
  /// <param name="userName">用户名</param>
  /// <param name="_password">用户名密码</param>
  /// <returns>bool</returns>
  [AjaxPro.AjaxMethod]
  public static bool userNameAndPasswordIsExist(string userName, string _password)
  {
    string password = GeneralMethod.ToEncryptPassword(_password);
    string executeString = "SELECT COUNT(*) FROM users WHERE userName = '" + userName.ToString() + "' AND password = '" + password + "'";
    int count = int.Parse(GetCommand.ExecuteScalar(executeString));
    if (count == 1)
    {
      System.Web.HttpContext.Current.Session["userName"] = userName;
      return true;
    }
    else
    {
      return false;
    }
  }

  /// <summary>
  /// 判断用户是不是有这进入管理留言版的权限
  /// </summary>
  /// <param name="userName">用户名</param>
  /// <returns></returns>
  [AjaxPro.AjaxMethod]
  public static bool userNameIsRight(string userName)
  {
    string executeString = "SELECT [right] FROM role WHERE usersId = (select userNameId from users where userName = '" + userName + "')";
    int count = int.Parse(GetCommand.ExecuteScalar(executeString));
    if (count > 0)
    {
      return true;
    }
    else
    {
      return false;
    }
  }

  /// <summary>
  /// 返回Url值
  /// </summary>
  /// <returns></returns>
  [AjaxPro.AjaxMethod]
  public static string returnUrl()
  {
    string url = "";
    try
    {
      url = System.Web.HttpContext.Current.Session["url"].ToString();
    }
    catch
    {
      url ="404";
    }
    return url;
  }
}

下面是页面代码

<%@ Control Language="C#" AutoEventWireup="true" CodeFile="logon.ascx.cs" Inherits="userControl_logon" %>
<script language="javascript" type="text/javascript" src="../JavaScript/logon.js">
</script>
<script language="javascript" type="text/javascript" src="JavaScript/logon.js">
</script>
<link href="../CSS/table_css.css" rel="stylesheet" type="text/css" />
<link href="CSS/table_css.css" rel="stylesheet" type="text/css" />
<body onload="OnLoad_checkCode();">
<div>
<table border="0" cellpadding="0" cellspacing="0">
    <tr>
      <td>
        <table id="hideLogon" border="0" cellpadding="0" cellspacing="0" >
          <tr>
            <td >用户名:</td>
            <td><input type="text" id="txtuserName"  /></td>
          </tr>
          <tr>
            <td >密 码:</td>
            <td>
              <input id="txtpassword" type="password"  /></td>
          </tr>
          <tr>
            <td >验证码:</td>
            <td >
              <input type= "text" id="txtCheckCode"  /><label id="lblNumber"></label></td>
          </tr>
          <tr>
            <td ></td>
            <td >
              <input type="button" onclick="usersLogon();" value="登录" id="btnLogon" /></td>
          </tr>
        </table>
      </td>
    </tr>
    <tr>
      <td >
        <div id="Url"></div>
      </td>
    </tr>
    <tr>
      <td align="center">
        <table id="Returndefault" border="0" cellpadding="0" cellspacing="0" >
          <tr>
            <td>
              <asp:HyperLink ID="HyperLink1" runat="server" NavigateUrl="~/Default.aspx">返回首页</asp:HyperLink></td>
          </tr>
        </table>
      </td>
    </tr>
  </table>
</div>
</body>

以上是“如何基于Ajax技术实现无刷新用户登录功能”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注编程网node.js频道!

--结束END--

本文标题: 如何基于Ajax技术实现无刷新用户登录功能

本文链接: https://lsjlt.com/news/70872.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • 如何基于Ajax技术实现无刷新用户登录功能
    这篇文章主要为大家展示了“如何基于Ajax技术实现无刷新用户登录功能”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“如何基于Ajax技术实现无刷新用户登录功能”这...
    99+
    2024-04-02
  • AJAX怎么实现无刷新登录功能
    这篇文章主要为大家展示了“AJAX怎么实现无刷新登录功能”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“AJAX怎么实现无刷新登录功能”这篇文章吧。最近学习了如何...
    99+
    2024-04-02
  • Ajax如何实现无刷新登录
    这篇文章主要为大家展示了“Ajax如何实现无刷新登录”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Ajax如何实现无刷新登录”这篇文章吧。先建一个Login.h...
    99+
    2024-04-02
  • jQ中如何使用ajax实现用户无刷新登录
    这篇文章给大家分享的是有关jQ中如何使用ajax实现用户无刷新登录的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。ajax俗称无刷新登录或局部刷新登录,这样可以提高用户体验了,文章...
    99+
    2024-04-02
  • AJAX如何实现无刷新检测用户名功能
    这篇文章将为大家详细讲解有关AJAX如何实现无刷新检测用户名功能,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。先来看看原理图register.php<!DOCTYPE html>&l...
    99+
    2023-06-08
  • ajax如何实现无刷新评论功能
    小编给大家分享一下ajax如何实现无刷新评论功能,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!这是留言板的界面,当用户点击提交留...
    99+
    2024-04-02
  • Ajax技术怎么实现WEB无刷新提交数据功能
    这篇文章主要介绍“Ajax技术怎么实现WEB无刷新提交数据功能”,在日常操作中,相信很多人在Ajax技术怎么实现WEB无刷新提交数据功能问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大...
    99+
    2024-04-02
  • ajax如何实现无刷新上传文件功能
    这篇文章主要介绍了ajax如何实现无刷新上传文件功能,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。具体内容如下<!DOCTYPE HTML><ht...
    99+
    2023-06-08
  • web开发中如何实现无刷新的Ajax分页技术
    这篇文章主要介绍web开发中如何实现无刷新的Ajax分页技术,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!代码如下:<!DOCTYPE html PUBLI...
    99+
    2024-04-02
  • 使用AJAX怎么实现无刷新分页功能
    使用AJAX怎么实现无刷新分页功能,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。  首先讲一下原理:分页有两个要点:1.有多少页,2.每页有多...
    99+
    2024-04-02
  • 怎么用ASP+Ajax实现无刷新评论功能
    本篇内容介绍了“怎么用ASP+Ajax实现无刷新评论功能”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!&l...
    99+
    2024-04-02
  • Ajax如何实现弹出式无刷新城市选择功能
    这篇文章给大家分享的是有关Ajax如何实现弹出式无刷新城市选择功能的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。具体如下:这是一款很棒的全国城市选择效果,添加城市时先添加组:找到...
    99+
    2024-04-02
  • 怎么用Flash和Ajax实现无刷新分页功能
    这篇文章主要讲解了“怎么用Flash和Ajax实现无刷新分页功能”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么用Flash和Ajax实现无刷新分页功能”...
    99+
    2024-04-02
  • 如何基于Session实现短信登录功能
    目录一、基于Session实现登录1.1 业务流程图二、发送短信验证码2.1 发送短信请求方式及参数说明三、登录功能  3.1  短信验证的请求方式及路径3.2  业务层代码实现用户登录3....
    99+
    2024-04-02
  • 基于Vue3和elementplus如何实现登录功能
    这篇文章主要介绍了基于Vue3和elementplus如何实现登录功能的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇基于Vue3和elementplus如何实现登录功能文章都会有所收获,下面我们一起来看看吧。登...
    99+
    2023-07-05
  • 纯JS如何实现AJAX局部刷新功能
    小编给大家分享一下纯JS如何实现AJAX局部刷新功能,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!js有什么特点1、js属于一种解释性脚本语言;2、在绝大多数浏览器的支持下,js可以在多种平台下运行,拥有着跨平台特性;3、...
    99+
    2023-06-08
  • Ajax中怎么利用smarty实现无刷新分页功能
    这篇文章将为大家详细讲解有关Ajax中怎么利用smarty实现无刷新分页功能,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。类:  (function(){ ...
    99+
    2024-04-02
  • 如何使用ajax技术无刷新动态调用新浪股票实时数据
    本篇内容介绍了“如何使用ajax技术无刷新动态调用新浪股票实时数据”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有...
    99+
    2024-04-02
  • jQuery的ajax中如何使用FormData实现页面无刷新上传功能
    小编给大家分享一下jQuery的ajax中如何使用FormData实现页面无刷新上传功能,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!1,先看效果图期望的功能和效果很简单:点击页面中的上传...
    99+
    2024-04-02
  • Ajax如何实现无刷新在注册用户名时的应用
    这篇文章主要介绍Ajax如何实现无刷新在注册用户名时的应用,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完! var xmlHttp; ...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作