Discuz教程网

jquery学习笔记 用jquery实现无刷新登录

[复制链接]
authicon dly 发表于 2011-9-12 15:19:04 | 显示全部楼层 |阅读模式
好了,唠嗑就到这里,现在看如何用jquery实现无刷新登录。
首先先创建html的部分
  1. <table>
  2. <tr>
  3. <td>
  4. 用户名:
  5. </td>
  6. <td>
  7. <input type="text" id="username" />
  8. </td>
  9. </tr>
  10. <tr>
  11. <td>
  12. 密码:
  13. </td>
  14. <td>
  15. <input type="text" id="password" />
  16. </td>
  17. </tr>
  18. <tr>
  19. <td>
  20. 验证码:
  21. </td>
  22. <td>
  23. <input type="text" id="cord" />
  24. <img alt="点击更换验证码" title="看不清楚,请单击我!" id="checkcord" src="img.ashx" />
  25. </td>
  26. </tr>
  27. <tr>
  28. <td>
  29. <input type="button" value="登录" />
  30. </td>
  31. <td>
  32. </td>
  33. </tr>
  34. </table>
复制代码

这里面包含的功能有:登录的验证,点击更换验证码。这个没有什么好说的。
下面是jquery的部分
  1. <script src="Scripts/jquery-1.4.1.min.js" type="text/javascript"></script>-----------别忘了引用这个链接,否则jquery不能用
  2. <script type="text/javascript">
  3. //用jquery实现无刷新的登录验证
  4. function login() {
  5. $.ajax({
  6. url: 'Login.ashx', //访问路径
  7. data: 'username=' + $("#username").val() + "&password=" + $("#password").val() + "&cord=" + $("#cord").val(), //需要验证的参数
  8. type: 'post', //传值的方式
  9. error: function () {//访问失败时调用的函数
  10. alert("链接服务器错误!");
  11. },
  12. success: function (msg) {//访问成功时调用的函数,这里的msg是Login.ashx返回的值
  13. alert(msg);
  14. }
  15. });
  16. }
  17. //验证码图片
  18. $(function () {
  19. $("#username").focus();
  20. $("#checkcord").click(function () {
  21. $("#checkcord").attr("src", "img.ashx?time=" + new Date());
  22. });
  23. })
  24. </script>
复制代码

大概的核心代码就是这些了,当用户点击登录按钮时,触发login事件,用jquery向Login.ashx发出请求,在Login.ashx当中,仅仅只是验证用户名和密码是否匹配,验证码是否正确。Login.ashx是用C#语言写的,如果你们学习的是别的语言就将地址更换为别的就可以了。
img.ashx是生成验证码的程序,每点击一次图片都会重新访问img.ashx,所以图片是更换的,在生成图片的时候,会生成存储验证码的session,在Login.ashx当中,判断用户输入的值和session的值是否相同就可以了。在这里我只显示主要的源码了。
  1. context.Response.ContentType = "text/plain";
  2. string username = context.Request.Form["username"];
  3. string password = context.Request.Form["password"];
  4. string cord = context.Request.Form["cord"];
  5. if (context.Session["cord"] != null)
  6. {
  7. if (context.Session["cord"].ToString() == cord)
  8. {
  9. if (username == "admin" && password == "admin")
  10. {
  11. context.Response.Write("登录成功!");
  12. }
  13. else
  14. {
  15. context.Response.Write("登录失败!用户名和密码错误!");
  16. }
  17. }
  18. else
  19. {
  20. context.Response.Write("验证码错误!");
  21. }
  22. }
复制代码

这是判断登录的代码。
好了,以上就是核心代码,希望大家多多指教。也希望我的笔记对您有用



上一篇:使用jQuery+HttpHandler+xml模拟一个三级联动的例子
下一篇:Jquery ajax传递复杂参数给WebService的实现代码
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

1314学习网 ( 浙ICP备10214163号 )

GMT+8, 2025-5-2 20:16

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表