jquery无刷新登录的实现方法

发布时间:2020-01-23编辑:脚本学堂
jquery是个了不起的小东东,无所不能,今天为大家介绍使用jquery实现无刷新登录的方法,有需要的朋友,可以参考下。

jquery是个了不起的小东东,无所不能,今天为大家介绍使用jquery实现无刷新登录的方法,有需要的朋友,可以参考下。

首先,创建html页面:
 

复制代码 代码示例:
<table>
<tr><td>用户名:</td><td>
<input type="text" id="username" />
</td></tr>
<tr><td>密码:</td><td>
<input type="text" id="password" />
</td></tr>
<tr><td>验证码:</td><td>
<input type="text" id="cord" />
<img alt="点击更换验证码" title="视线模糊请单击我" id="checkcord" src="img.ashx" />
</td></tr>
<tr><td><input type="button" onclick="login();" value="登录" /></td><td></td></tr>
</table>

功能有:登录的验证,点击更换验证码。

然后,来看jquery部分:
 

复制代码 代码示例:
<script src="Scripts/jquery-1.4.1.min.js" type="text/javascript"></script>
<script type="text/javascript">
//用jquery实现无刷新的登录验证
function login() {
$.ajax({
url: 'Login.ashx', //访问路径
data: 'username=' + $("#username").val() + "&password=" + $("#password").val() + "&cord=" + $("#cord").val(), //需要验证的参数
type: 'post', //传值的方式
error: function () {//访问失败时调用的函数
alert("链接服务器错误!");
},
success: function (msg) {//访问成功时调用的函数,这里的msg是Login.ashx返回的值
alert(msg);
}
});
}
//验证码图片
$(function () {
$("#username").focus();
$("#checkcord").click(function () {
$("#checkcord").attr("src", "img.ashx?time=" + new Date());
});
})
</script>
 

当用户点击登录按钮时,触发login事件,用jquery向Login.ashx发出请求,在Login.ashx当中,仅仅只是验证用户名和密码是否匹配,验证码是否正确。
Login.ashx是用C#语言写的。

img.ashx是生成验证码的程序,每点击一次图片都会重新访问img.ashx,所以图片是更换的,在生成图片的时候,会生成存储验证码的session,在Login.ashx当中,判断用户输入的值和session的值是否相同即可。

主要代码:
 

复制代码 代码示例:
context.Response.ContentType = "text/plain";
string username = context.Request.Form["username"];
string password = context.Request.Form["password"];
string cord = context.Request.Form["cord"];
if (context.Session["cord"] != null)
{
if (context.Session["cord"].ToString() == cord)
{
if (username == "admin" && password == "admin")
{
context.Response.Write("登录成功!");
}
else
{
context.Response.Write("登录失败!用户名和密码错误!");
}
}
else
{
context.Response.Write("验证码错误!");
}
}

以上是判断登录的代码。