jQuery实战(一) ----------转载牛腩博客

jQuery实战(一)
 
    从ITCAST上看到出了个jQuery实战的视频(http://www.itcast.net/portal/courses/unit/198),目前不用钱,呵呵,昨晚看了一下,觉得很不错,遂记录下来,以便日后复习!!!
    JQuery实战课程是一个系列课,采用每节课动手实战一个实例效果的方式来介绍如何使用JQuery快速开发AJAX前端应用,并结合实例介绍一些前端开发中HTML,CSS,Javascript的知识以及跨浏览器差异问题的解决方法。
    第一节课除了讲了一些环境的安装及参考资料,还讲了一个使用jQuery的AJAX功能来进行进一简单的用户验证,视频里用的是JAVA,于是我把他改成了.NET版的.
    因为这是一系列的课程,所以我在VS中建立了一个jQueryTest的工程,来专门做这些实例,为了分类,我专门在工程中建立了css,js,handler,images文件夹,用于存放不同的文件,在这里我的服务器端全都使用一般处理程序,存在于handler文件夹下,整个源码之后我会随之传上来.
    实例中还加了样子的变化,同样也是用jQuery来实现样子的切换的,代码如下:
首先是HTML页面文件的代码,很简单,两个文本框一个按钮,在这里我全都使用ID来命名:
  1. <%@ Page Language="C#" AutoEventWireup="true" CodeFile="userlogin.aspx.cs" Inherits="userlogin" %>  
  2.   
  3. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">  
  4.   
  5. <html xmlns="http://www.w3.org/1999/xhtml">  
  6. <head runat="server">  
  7.     <title>AJAX用户登陆</title>  
  8.     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">  
  9.     <link href="css/userlogin.css" rel="stylesheet" type="text/css" />  
  10.     <script src="js/jquery.min.js" type="text/javascript"></script>  
  11.     <script src="js/userlogin.js" type="text/javascript"></script>  
  12. </head>  
  13. <body>  
  14.     <form id="form1" runat="server">  
  15.     请输入用户名: <input  type="text" id="userName" class="notValue" /><br />  
  16.     请输入密 码: <input type="password" id="userPassword" class="notValue" /><br />  
  17.     <input type="button" value="登陆" id="btnLogin" />  
  18.     <div id="mes"></div>  
  19.     </form>  
  20. </body>  
  21. </html>  

    一开始文本框里是没有值的,所以拥有notValue样式,样式表文件userlogin.css的源码如下:
  1. .hasValue{    /* 文本框有值的时候的样式 */   
  2.     border: 1px solid #9EC9FF;   
  3. }   
  4.   
  5. .notValue{  /* 文本框无值的时候的样式 */   
  6.     border: 1px solid #f00;   
  7.     background: url(../images/userVerify.gif) repeat-x bottom;       
  8. }  

    接下来就是编写JS文件,下面是userlogin.js的源码:
  1. $(document).ready(function() {  // 页面加载后就执行此函数,相当于以前在body标签上加上onload=....   
  2.     // 注册登陆按钮点击事件   
  3.     $("#btnLogin").click(function() {   
  4.         // 获取文本框内容并二次转码,防止中文乱码   
  5.         var userName = encodeURI(encodeURI($("#userName").val()));   
  6.         var userPassword = encodeURI(encodeURI($("#userPassword").val()));   
  7.         // 判断是否文本框是否有内容   
  8.         if (userName == "") {   
  9.             alert("请输入用户名!");   
  10.             return;   
  11.         }   
  12.         if (userPassword == "") {   
  13.             alert("请输入密码!");   
  14.             return;   
  15.         }   
  16.         // AJAX发送数据   
  17.         $.get("handler/userlogin.ashx?username="+userName+"&userpassword="+userPassword, nullfunction(data) {   
  18.             $("#mes").text(data);   
  19.         });   
  20.     });   
  21.   
  22.     // 注册文本框的键盘按键事件   
  23.     $("#userName").keyup(function() {   
  24.         // alert($("#userName").val());   
  25.         if ($("#userName").val() != "") {   
  26.             // 如果文本框里的内容不为空,则切换样式到hasValue   
  27.             $("#userName").removeClass("notValue").addClass("hasValue");   
  28.         } else {   
  29.             $("#userName").removeClass("hasValue").addClass("notValue");   
  30.         }   
  31.     });   
  32.   
  33.     $("#userPassword").keyup(function() {   
  34.         if ($("#userPassword").val() != "" && $("#userPassword").val() != null) {   
  35.             // 如果文本框里的内容不为空,则切换样式到hasValue   
  36.             $("#userPassword").removeClass("notValue").addClass("hasValue");   
  37.         } else {   
  38.             $("#userPassword").removeClass("hasValue").addClass("notValue");   
  39.         }   
  40.     });   
  41. });  

    以上的JS代码没什么好说的,只要花点时间查查jQuery的API文档就懂,我会把需要用于的jQuery的参数资料放在附件里,包括jQuery中文API,jQuery的1.2.6版本, CSS参考手册,DHTML参考手册, 需要注意的是:打开下载好的CHM文件的时候,我的XPSP3会弹出一个"打开文件-安全警告"的对话框,我要把对话框里的"打开此文件前总是询问"的勾勾取消掉,否则的话打开后是看不到任何内容的!
    以上就是第一课讲的小实例,今晚下班回去继续看第二课,嘿嘿!!!

 

posted @ 2010-07-19 21:53  你妹的sb  阅读(540)  评论(0编辑  收藏  举报
百度一下