JQuery的ajax登录案例
1.简单版
AjaxLogin.html代码:
<head>
<title></title>
<script src="jquery-1.8.3.js" type="text/javascript"></script>
<script type="text/javascript">
$(function () {
$("#btn").click(function () {
var name = $("#name").val();
var pwd = $("#pwd").val();
$.ajax({
type: "post",
url: "AjaxLogin.ashx",
data: { name: name, pwd: pwd },
success: function (data) {
var strs = $.parseJSON(data);
if (strs.Status == "ok") {
alert(strs.Msg);
}
else if (strs.Status == "error") {
alert(strs.Msg);
}
else {
alert("服务器返回信息出错");
}
},
error: function () {
alert("登录请求失败");
}
});
});
});
</script>
</head>
<body>
<input type="text" id="name" value="" />
<input type="text" id="pwd" value="" />
<input type="button" id="btn" value="确定" />
</body>
</html>
AjaxLogin.ashx代码:
public void ProcessRequest(HttpContext context)
{
context.Response.ContentType = "text/html";
string name = context.Request["name"];
string pwd = context.Request["pwd"];
if (name == "admin" && pwd == "")
{
string json = new JavaScriptSerializer().Serialize(new { Status = "ok", Msg = "登录成功" });
context.Response.Write(json);
}
else
{
string json = new JavaScriptSerializer().Serialize(new { Status = "error", Msg = "登录失败" });
context.Response.Write(json);
}
}
2.完整版
Login.html代码:
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title>登录</title>
<script src="jquery-1.5.2.js"></script>
<script type="text/javascript">
$(function () {
$("#imgValidCode").click(function () {
$("#imgValidCode").attr("src", "LoginValidCode.ashx?" + new Date());
}); $("#btnLogin").click(function () {
var username = $("#username").val();
var password = $("#password").val();
var validCode = $("#validCode").val();
$.ajax({
type: 'post', url: 'Login1.ashx', data: { username: username, password: password ,validCode:validCode},
success: function (data) {
if (data.Status == "ok") {
alert("登录成功");
}
else if (data.Status == "error") {
alert("出错啦!" + data.Msg);
}
else {
alert("服务器返回信息未知");
}
},
error: function () {
alert("登录请求失败");
}
});
});
}); </script>
</head>
<body>
<table>
<tr><td>用户名:</td><td><input type="text" id="username" /></td></tr>
<tr><td>密码:</td><td><input type="password" id="password" /></td></tr>
<tr><td><img src="LoginValidCode.ashx" id="imgValidCode" /></td><td><input type="text" id="validCode" /></td></tr>
<tr><td><input type="button" id="btnLogin" value="登录" /></td><td></td></tr>
</table>
</body>
Login.ashx代码:
public void ProcessRequest(HttpContext context)
{
context.Response.ContentType = "application/json";
string username = context.Request["username"];
string password = context.Request["password"];
string validCode = context.Request["validCode"]; //sesssion中的验证
string serverValidCode = (string)context.Session[LoginValidCode.LOGINVALIDCODE];
if (validCode != serverValidCode)
{
string json = new JavaScriptSerializer().Serialize(new { Status="error",Msg="验证码错误"});
context.Response.Write(json);
return;
}
DataTable dtUsers = SqlHelper.ExecuteQuery("select * from T_Users where UserName=@UserName",
new SqlParameter("@UserName",username));
if (dtUsers.Rows.Count <= )
{
string json = new JavaScriptSerializer().Serialize(new { Status = "error", Msg = "用户名不存在" });
context.Response.Write(json);
return;
}
if (dtUsers.Rows.Count > )
{
string json = new JavaScriptSerializer().Serialize(new { Status = "error", Msg = "系统出错,请联系管理员" });
context.Response.Write(json);
return;
}
DataRow rowUser = dtUsers.Rows[];
string dbPassword = (string)rowUser["Password"];
if (dbPassword == password)
{
string json = new JavaScriptSerializer().Serialize(new { Status = "ok", Msg = "登录成功" });
context.Response.Write(json);
}
else
{
string json = new JavaScriptSerializer().Serialize(new { Status = "error", Msg = "密码错误" });
context.Response.Write(json);
}
}
JQuery的ajax登录案例的更多相关文章
- Django(十二)视图--利用jquery从后台发送ajax请求并处理、ajax登录案例
一.Ajax基本概念 [参考]:https://www.runoob.com/jquery/jquery-ajax-intro.html 异步的javascript.在不全部加载某一个页面部的情况下, ...
- Python Django 之 基于JQUERY的AJAX 登录页面
一.基于Jquery的Ajax的实现 1.url 2.vews 3.templates
- jQuery中的ajax用法案例
什么是 AJAX? AJAX = 异步 JavaScript 和 XML(Asynchronous JavaScript and XML). 简短地说,在不重载整个网页的情况下,AJAX 通过后台加载 ...
- 用户管理的设计--4.jquery的ajax实现登录名的校验
页面效果 鼠标失去焦点时,不需要刷新页面进行校验,判断登录名是否重复. 实现步骤 1.引入struts2-json-plugin-2.5.10.1插件包 2.页面使用jquery的ajax实现后台校验 ...
- JQuery中Ajax详细参数使用案例
JQuery中Ajax详细参数使用案例 参考文档:http://www.jb51.net/shouce/jquery1.82/ 参考文档:http://jquery.cuishifeng.cn/jQu ...
- jSon和Ajax登录功能,ajax数据交互案例
ajax实例,检测用户与注册 检测用户名是否被占用: 在用户填写完用户名之后,ajax会异步向服务器发送请求,判断用户名是否存在 首先写好静态页面: index.html <!DOCTYPE h ...
- 【jQuery实例】Ajax登录页面
登录界面是信息系统提供的必备的功能,是提供给用户提供维护信息的接口.接下来,我来带领大家打造一个漂亮.安全的登录界面,使用的技术是ASP.NET+jQuery 先来看看预览效果 Ajax登录重点在 ...
- Django(十六)基于模板的登录案例:登录装饰器、csrf攻击方式及防护、ajax的Post 的csrf开启写法、生成验证码、加验证码登录、反向解析+传参
一.csrf攻击 1.1 csrf攻击(跨站请求伪造) [csrf攻击即]:通过第3方网站,伪造请求(前提条件是你已经登录正常网站,并保存了session或cookie登录信息且没有退出),第三方网站 ...
- 实现Web请求后端Api的Demo,实现是通过JQuery的AJAX实现后端请求,以及对请求到的数据的解析处理,实现登录功能
本篇实现Web请求后端Api的Demo,实现是通过JQuery的AJAX实现后端请求,以及对请求到的数据的解析处理,实现登录功能需求描述:1. 请求后端Api接口地址2. 根据返回信息进行判断处理前端 ...
随机推荐
- TYVJ1864 守卫者的挑战
P1864 [Poetize I]守卫者的挑战 时间: 1000ms / 空间: 131072KiB / Java类名: Main 描述 打开了黑魔法师Vani的大门,队员们在迷宫般的路上漫无目的地搜 ...
- 洛谷1352 CODEVS1380 没有上司的舞会
洛谷的测试数据貌似有问题,4个点RE不可避 CODEVS可AC —————— 10分钟后追记:在洛谷把数组范围开到10000+就过了 —————— 题目描述 Description Ural大学有N个 ...
- HackerRank Extra long factorials
传送门 今天在HackerRank上翻到一道高精度题,于是乎就写了个高精度的模板,说是模板其实就只有乘法而已. Extra long factorials Authored by vatsalchan ...
- HD1712ACboy needs your help(纯裸分组背包)
ACboy needs your help Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Ot ...
- ECSHOP管理员密码忘记了怎么办?
ECSHOP管理员密码忘记了怎么办? ECSHOP教程/ ecshop教程网(www.ecshop119.com) 2013-09-06 不小心在后台把管理员全部给清空了,闹的网站都无法登陆了?有 ...
- jQuery插件开发教程
jQuery插件开发教程 ——让你的jQuery水平提升一个台阶 要说jQuery 最成功的地方,我认为是它的可扩展性吸引了众多开发者为其开发插件,从而建立起了一个生态系统.这好比大公司们争相做平台 ...
- Python socket编程之五:更新分时图
f1.py # -*- coding: utf-8 -*- import socket import struct import sqlalchemy import pandas ########## ...
- 转 web项目中的web.xml元素解析
转 web项目中的web.xml元素解析 发表于1年前(2014-11-26 15:45) 阅读(497) | 评论(0) 16人收藏此文章, 我要收藏 赞0 上海源创会5月15日与你相约[玫瑰里 ...
- Visual Studio Online Integrations-Productivity
原文:http://www.visualstudio.com/zh-cn/explore/vso-integrations-di ...
- mysql 权限设置
1.“grant all on *.* to root@'%' identified by 'yourpassword';”——这个还可以顺带设置密码.2.“flush privileges; ”—— ...