对登录的响应 dologin.jsp9159金沙官网:,ASP.NET M

作者: 操作系统  发布:2019-10-03

源码如下:

 

jquery中的事件 通过prepend添加的内容可以获取匹配事件不

你好!
1. 对于prepend()添加的元素,或者动态生成的元素,一般使用live()进行事件指定;2. 对于元素的toggle()事件,使用live()绑定事件时,可以通过先为其指定click()事件,然后在click()事件中设置该元素的toggle()事件,最后只要自动触发一次click()事件就可以了。这个过程大概是这样的:live()--->指定click()事件--->实现该元素的toggle()事件的逻辑(此时click()事件无法触发toggle()中的任何函数)--->trigger("click"),触发toggle()中的函数。
$("#list .message input").live("click",function(){ $(this).toggle( function(){ $(this).parent(this).after("<div>评论列表</div>"); }, function(){ $(this).parent(this).next(this).remove(); } ).trigger('click');});  

详解Jquery 选择器,详解jquery选择器

1   概述

 本篇文章为穿插文章,ASP.NET MVC系列目前写了如下几篇:

  • 详解google Chrome浏览器(理论篇)
  • 详解Google Chrome浏览器(操作篇)(上)
  • 详解Google Chrome浏览器(操作篇)(下)
  • .NET 开发环境搭建
  • 详解ASP.NET MVC 路由
  • 详解ASP.NET MVC 控制器

写该篇文章主要目的是为接下来的ASP.NET MVC 系列,如页面之间传值,ADO.NET和EF,Bootstrap等打基础,本篇文章比较基础,但比较全面,非常适合基础快速扫盲。

2   基本选择器

2.1  一览表

9159金沙官网 1

2.2  示例代码

 (1)id选择器

将id为lastname元素的背景色设置为蓝色

9159金沙官网 2 1 <!DOCTYPE html> 2 3 <html> 4 <head> 5 <meta name="viewport" content="width=device-width" /> 6 <script src="~/Scripts/jquery-1.10.2.js"></script> 7 <title>JQuery函数</title> 8 <script type="text/javascript"> 9 $(document).ready(function () { 10 $("#lastname").css("background-color", "#0000ff"); 11 12 }); 13 14 </script> 15 </head> 16 <body> 17 <div id="lastname">id为lastname的选择器</div> 18 </body> 19 </html> View Code

(2)类选择器

将class为intro元素的背景色设置为蓝色

9159金沙官网 3 1 <!DOCTYPE html> 2 3 <html> 4 <head> 5 <meta name="viewport" content="width=device-width" /> 6 <script src="~/Scripts/jquery-1.10.2.js"></script> 7 <title>JQuery函数</title> 8 <script type="text/javascript"> 9 $(document).ready(function () { 10 $(".intro").css("background-color", "#0000ff"); 11 12 }); 13 14 </script> 15 </head> 16 <body> 17 <div class="intro">div选择器测试</div> 18 <p class="intro">p测试选择器</p> 19 </body> 20 </html> View Code

(3)元素选择器

将p元素的背景色设置为蓝色

9159金沙官网 4 1 <!DOCTYPE html> 2 3 <html> 4 <head> 5 <meta name="viewport" content="width=device-width" /> 6 <script src="~/Scripts/jquery-1.10.2.js"></script> 7 <title>JQuery函数</title> 8 <script type="text/javascript"> 9 $(document).ready(function () { 10 $("p").css("background-color", "#0000ff"); 11 12 }); 13 14 </script> 15 </head> 16 <body> 17 <p>p测试选择器</p> 18 </body> 19 </html> View Code

(4)所有选择器

遍历body下的所有元素,将其背景色设置为蓝色

9159金沙官网 5 1 <!DOCTYPE html> 2 3 <html> 4 <head> 5 <meta name="viewport" content="width=device-width" /> 6 <script src="~/Scripts/jquery-1.10.2.js"></script> 7 <title>JQuery函数</title> 8 <script type="text/javascript"> 9 $(document).ready(function () { 10 $("body *").css("background-color", "#0000ff"); 11 12 }); 13 14 </script> 15 </head> 16 <body> 17 <div>选择器测试</div> 18 <p>p元素</p> 19 </body> 20 </html> View Code

(5)并列选择器

 将元素p和元素div背景色设置为蓝色

9159金沙官网 6 1 <!DOCTYPE html> 2 3 <html> 4 <head> 5 <meta name="viewport" content="width=device-width" /> 6 <script src="~/Scripts/jquery-1.10.2.js"></script> 7 <title>JQuery函数</title> 8 <script type="text/javascript"> 9 $(document).ready(function () { 10 $("p,div").css("background-color", "#0000ff"); 11 12 }); 13 14 </script> 15 </head> 16 <body> 17 <div>选择器测试</div> 18 <p>p元素</p> 19 </body> 20 </html> View Code

3   层次选择器

3.1 一览表

9159金沙官网 7

3.2 示例代码

(1)parent>child(直系子元素,即直接下一代元素)

设置div元素的第一代元素为span的元素的背景色为蓝色

9159金沙官网 8 1 <!DOCTYPE html> 2 3 <html> 4 <head> 5 <meta name="viewport" content="width=device-width" /> 6 <script src="~/Scripts/jquery-1.10.2.js"></script> 7 <title>JQuery函数</title> 8 <script type="text/javascript"> 9 $(document).ready(function () { 10 $("div>span").css("background-color", "#0000ff"); 11 12 }); 13 14 </script> 15 </head> 16 <body> 17 <div> 18 <span>DOM树,DIV第一代</span> 19 <p> 20 <span>DOM树,第二代</span> 21 </p> 22 <span>DOM树,DIV第一代</span> 23 </div> 24 </body> 25 </html> View Code

测试结果:

9159金沙官网 9

结果分析:根据如上代码画出的DOM树如下,可以很清晰看出,DIV有三个直接孩子,即第一代span,p,span,代码中div>span,表示div下的直接第一代span,因此,测试结果就不难理解了。

9159金沙官网 10

(2)prev+next(prev元素的下一个兄弟元素,等同于next()方法)

设置类为intro元素的下一个兄弟元素背景色为蓝色

9159金沙官网 11 1 <!DOCTYPE html> 2 3 <html> 4 <head> 5 <meta name="viewport" content="width=device-width" /> 6 <script src="~/Scripts/jquery-1.10.2.js"></script> 7 <title>JQuery函数</title> 8 <script type="text/javascript"> 9 $(document).ready(function () { 10 $(".intro+div").css("background-color", "#0000ff"); 11 //$(".intro").next("div").css("background-color", "#0000ff"); 12 13 }); 14 15 </script> 16 </head> 17 <body> 18 <div>1</div> 19 <p class="intro">2</p> 20 <div>3</div> 21 <div>4</div> 22 <span class="item">5</span> 23 <div>6</div> 24 </body> 25 </html> View Code

测试结果:

9159金沙官网 12

结果分析:根据如上代码画出DOM树如下图,测试结果显而易见。

9159金沙官网 13

(3)prev~siblings(prev元素的所有兄弟元素,等同于nextAll()方法)

 设置类为intro元素之后的所有兄弟元素为div元素的背景色为蓝色

9159金沙官网 14 1 <!DOCTYPE html> 2 3 <html> 4 <head> 5 <meta name="viewport" content="width=device-width" /> 6 <script src="~/Scripts/jquery-1.10.2.js"></script> 7 <title>JQuery函数</title> 8 <script type="text/javascript"> 9 $(document).ready(function () { 10 $(".intro~div").css("background-color", "#0000ff"); 11 }); 12 13 </script> 14 </head> 15 <body> 16 <div>G0</div> 17 <div class="intro">G1</div> 18 <div>G2</div> 19 <span>G3</span> 20 <div>G4</div> 21 </body> 22 </html> View Code

测试结果:

9159金沙官网 15

分析测试结果:根据如上代码画出DOM树如下图,测试结果显而易见。

9159金沙官网 16

4   过滤选择器

4.1 基本过滤选择器

4.1.1  一览表

9159金沙官网 17

4.1.2  代码示例

(1):first(选取第一个元素)

9159金沙官网 18 1 <!DOCTYPE html> 2 3 <html> 4 <head> 5 <meta name="viewport" content="width=device-width" /> 6 <script src="~/Scripts/jquery-1.10.2.js"></script> 7 <title>JQuery函数</title> 8 <script type="text/javascript"> 9 $(document).ready(function () { 10 $("span:first").css("background-color", "#0000ff"); 11 }); 12 13 </script> 14 </head> 15 <body> 16 <span>G1</span> 17 <span>G2</span> 18 <span>G3</span> 19 </body> 20 </html> View Code

测试结果:

9159金沙官网 19

(2):last(选取最后一个元素)

9159金沙官网 20 1 <!DOCTYPE html> 2 3 <html> 4 <head> 5 <meta name="viewport" content="width=device-width" /> 6 <script src="~/Scripts/jquery-1.10.2.js"></script> 7 <title>JQuery函数</title> 8 <script type="text/javascript"> 9 $(document).ready(function () { 10 $("span:last").css("background-color", "#0000ff"); 11 }); 12 13 </script> 14 </head> 15 <body> 16 <span>G1</span> 17 <span>G2</span> 18 <span>G3</span> 19 </body> 20 </html> View Code

测试结果:

9159金沙官网 21

(3):not(取非元素)

9159金沙官网 22 1 <!DOCTYPE html> 2 3 <html> 4 <head> 5 <meta name="viewport" content="width=device-width" /> 6 <script src="~/Scripts/jquery-1.10.2.js"></script> 7 <title>JQuery函数</title> 8 <script type="text/javascript"> 9 $(document).ready(function () { 10 $("div:not(.wrap)").css("background-color", "#0000ff"); 11 }); 12 13 </script> 14 </head> 15 <body> 16 <div>G1</div> 17 <div class="wrap">G2</div> 18 </body> 19 </html> View Code

但是,请注意下面的代码:当G1所在div和G2所在div是父子关系时,G1和G2都会变色。

9159金沙官网 231 <div> 2     G1    <div class="wrap">G2</div> 3 </div> View Code

(4):even(索引为偶数,索引 index从0开始)

9159金沙官网 24 1 <!DOCTYPE html> 2 3 <html> 4 <head> 5 <meta name="viewport" content="width=device-width" /> 6 <script src="~/Scripts/jquery-1.10.2.js"></script> 7 <title>JQuery函数</title> 8 <script type="text/javascript"> 9 $(document).ready(function () { 10 $("div:even").css("background-color", "#0000ff"); 11 }); 12 13 </script> 14 </head> 15 <body> 16 <div>G1</div> 17 <div>G2</div> 18 <div>G3</div> 19 <div>G4</div> 20 </body> 21 </html> View Code

测试结果:

9159金沙官网 25

(5):odd(索引为奇数,索引 index从0开始)

9159金沙官网 26 1 <!DOCTYPE html> 2 3 <html> 4 <head> 5 <meta name="viewport" content="width=device-width" /> 6 <script src="~/Scripts/jquery-1.10.2.js"></script> 7 <title>JQuery函数</title> 8 <script type="text/javascript"> 9 $(document).ready(function () { 10 $("div:odd").css("background-color", "#0000ff"); 11 }); 12 13 </script> 14 </head> 15 <body> 16 <div>G1</div> 17 <div>G2</div> 18 <div>G3</div> 19 <div>G4</div> 20 </body> 21 </html> View Code

测试结果:

9159金沙官网 27

(6):eq(x)(取指定索引的元素,x为从0开始的索引)

设置索引为2的div元素背景为蓝色

9159金沙官网 28 1 <!DOCTYPE html> 2 3 <html> 4 <head> 5 <meta name="viewport" content="width=device-width" /> 6 <script src="~/Scripts/jquery-1.10.2.js"></script> 7 <title>JQuery函数</title> 8 <script type="text/javascript"> 9 $(document).ready(function () { 10 $("div:eq(2)").css("background-color", "#0000ff"); 11 }); 12 13 </script> 14 </head> 15 <body> 16 <div>G1</div> 17 <div>G2</div> 18 <div>G3</div> 19 <div>G4</div> 20 </body> 21 </html> View Code

测试结果:

9159金沙官网 29

(7):lt(x))(取小于指定索引的元素,x为从0开始的索引)

9159金沙官网 30 1 <!DOCTYPE html> 2 3 <html> 4 <head> 5 <meta name="viewport" content="width=device-width" /> 6 <script src="~/Scripts/jquery-1.10.2.js"></script> 7 <title>JQuery函数</title> 8 <script type="text/javascript"> 9 $(document).ready(function () { 10 $("div:lt(2)").css("background-color", "#0000ff"); 11 }); 12 13 </script> 14 </head> 15 <body> 16 <div>G1</div> 17 <div>G2</div> 18 <div>G3</div> 19 <div>G4</div> 20 </body> 21 </html> View Code

测试结果:

9159金沙官网 31

(8):gt(x))(取大于指定索引的元素,x为从0开始的索引)

9159金沙官网 32 1 <!DOCTYPE html> 2 3 <html> 4 <head> 5 <meta name="viewport" content="width=device-width" /> 6 <script src="~/Scripts/jquery-1.10.2.js"></script> 7 <title>JQuery函数</title> 8 <script type="text/javascript"> 9 $(document).ready(function () { 10 $("div:gt(2)").css("background-color", "#0000ff"); 11 }); 12 13 </script> 14 </head> 15 <body> 16 <div>G1</div> 17 <div>G2</div> 18 <div>G3</div> 19 <div>G4</div> 20 </body> 21 </html> View Code

测试结果:

9159金沙官网 33

(8):header(取h1-h6标题元素)

9159金沙官网 34 1 <!DOCTYPE html> 2 3 <html> 4 <head> 5 <meta name="viewport" content="width=device-width" /> 6 <script src="~/Scripts/jquery-1.10.2.js"></script> 7 <title>JQuery函数</title> 8 <script type="text/javascript"> 9 $(document).ready(function () { 10 $(":header").css("background-color", "#0000ff"); 11 }); 12 13 </script> 14 </head> 15 <body> 16 <h1>测试H1标题</h1> 17 <div>G1</div> 18 <div>G2</div> 19 <div>G3</div> 20 <h2>测试h2标题</h2> 21 <h3>测试h3标题</h3> 22 <h4>测试h4标题</h4> 23 <div>G4</div> 24 <h5>测试h5标题</h5> 25 <h6>测试h6标题</h6> 26 </body> 27 </html> View Code

测试结果:

9159金沙官网 35

(9):animated(所有动画元素)

9159金沙官网 36 1 <!DOCTYPE html> 2 3 <html> 4 <head> 5 <meta name="viewport" content="width=device-width" /> 6 <script src="~/Scripts/jquery-1.10.2.js"></script> 7 <title>JQuery函数</title> 8 <script type="text/javascript"> 9 $(document).ready(function () { 10 function aniDiv() { 11 $("#box").animate({ width: 300 }, "slow"); 12 $("#box").animate({ width: 100 }, "slow", aniDiv); 13 } 14 aniDiv(); 15 $(".btn1").click(function () { 16 $(":animated").css("background-color", "#0000ff"); 17 }); 18 }); 19 20 </script> 21 <style> 22 div { 23 background: #98bf21; 24 height: 40px; 25 width: 100px; 26 position: relative; 27 margin-bottom: 5px; 28 } 29 </style> 30 </head> 31 <body> 32 <div></div> 33 <div id="box"></div> 34 <div></div> 35 <button class="btn1">Mark animated element</button> 36 </body> 37 </html> View Code

测试结果:

 9159金沙官网 37

4.2 内容过滤选择器

4.2.1 一览表

9159金沙官网 38

4.2.2 示例代码

(1):contains(text)(取包含text文本的元素)

9159金沙官网 39 1 <!DOCTYPE html> 2 3 <html> 4 <head> 5 <meta name="viewport" content="width=device-width" /> 6 <script src="~/Scripts/jquery-1.10.2.js"></script> 7 <title>JQuery函数</title> 8 <script type="text/javascript"> 9 $(document).ready(function () { 10 $('div:contains("G2")').css("background-color", "#0000ff"); 11 }); 12 13 </script> 14 15 </head> 16 <body> 17 <div>G1</div> 18 <div>G2</div> 19 <div>G3</div> 20 </body> 21 </html> View Code

测试结果:

9159金沙官网 40

(2):empty(取不包含子元素或文本为空的元素)

9159金沙官网 41 1 <!DOCTYPE html> 2 3 <html> 4 <head> 5 <meta name="viewport" content="width=device-width" /> 6 <script src="~/Scripts/jquery-1.10.2.js"></script> 7 <title>JQuery函数</title> 8 <script type="text/javascript"> 9 $(document).ready(function () { 10 $('div:empty').html('没有内容'); 11 }); 12 13 </script> 14 15 </head> 16 <body> 17 <div>G1</div> 18 <div>G2</div> 19 <div>G3</div> 20 <div></div> 21 </body> 22 </html> View Code

测试结果:

9159金沙官网 42

(3) :has(selector)(取选择器匹配的元素)

即使span不是div的直系子元素,也会生效

9159金沙官网 43 1 <!DOCTYPE html> 2 3 <html> 4 <head> 5 <meta name="viewport" content="width=device-width" /> 6 <script src="~/Scripts/jquery-1.10.2.js"></script> 7 <title>JQuery函数</title> 8 <script type="text/javascript"> 9 $(document).ready(function () { 10 // 为包含span元素的div添加边框 11 $('div:has(span)').css('border', '1px solid #000'); 12 }); 13 14 </script> 15 16 </head> 17 <body> 18 <div> 19 <h2> 20 A     <span>B</span> 21 </h2> 22 </div> 23 </body> 24 </html> View Code

测试结果:

9159金沙官网 44

(4):parent(取包含子元素或文本的元素)

9159金沙官网 45 1 <!DOCTYPE html> 2 3 <html> 4 <head> 5 <meta name="viewport" content="width=device-width" /> 6 <script src="~/Scripts/jquery-1.10.2.js"></script> 7 <title>JQuery函数</title> 8 <script type="text/javascript"> 9 $(document).ready(function () { 10 $('ol li:parent').css('border', '1px solid #000'); 11 }); 12 13 </script> 14 15 </head> 16 <body> 17 <ol> 18 <li></li> 19 <li>A</li> 20 <li></li> 21 <li>D</li> 22 </ol> 23 </body> 24 </html> View Code

测试结果:

9159金沙官网 46

4.3 可见性过滤选择器

4.3.1 一览表

9159金沙官网 47

4.3.2 示例代码

(1):hidden(取不可见的元素)

匹配display:none,<input type="hidden" />,visibility:hidden,capacity:0元素

9159金沙官网 48 1 <!DOCTYPE html> 2 3 <html> 4 <head> 5 <meta name="viewport" content="width=device-width" /> 6 <script src="~/Scripts/jquery-1.10.2.js"></script> 7 <title>JQuery函数</title> 8 <script type="text/javascript"> 9 $(document).ready(function () { 10 $('div:hidden').show(500); 11 alert($('input:hidden').val()); 12 }); 13 </script> 14 <style type="text/css"> 15 div         16 { 17 margin: 10px; 18 width: 200px; 19 height: 40px; 20 border: 1px solid #FF0000; 21 display:block; 22 } 23 24 .hid-1         25 { 26 display: none; 27 } 28 29 .hid-2         30 { 31 visibility: hidden; 32 } 33 34 </style> 35 </head> 36 <body> 37 <div class="hid-1">display: none</div> 38 <div class="hid-2">visibility: hidden</div> 39 <input type="hidden" value="hello" /> 40 </body> 41 </html> View Code

测试结果:

9159金沙官网 49

(2):visible(取可见的元素)

9159金沙官网 50 1 <!DOCTYPE html> 2 3 <html> 4 <head> 5 <meta name="viewport" content="width=device-width" /> 6 <script src="~/Scripts/jquery-1.10.2.js"></script> 7 <title>JQuery函数</title> 8 <script type="text/javascript"> 9 $(document).ready(function () { 10 $('div:visible').css("background-color", "#0000ff"); 11 }); 12 13 </script> 14 15 </head> 16 <body> 17 <div style="display:none">G1</div> 18 <div>G2</div> 19 <div style="display:none">G3</div> 20 <div>G4</div> 21 22 </body> 23 </html> 24 25 26 View Code

测试结果:

9159金沙官网 51

4.4 属性过滤选择器

4.4.1 一览表

9159金沙官网 52

4.4.2 代码示例

(1)[attribute](取拥有attribute属性的元素)

9159金沙官网 53 1 <!DOCTYPE html> 2 3 <html> 4 <head> 5 <meta name="viewport" content="width=device-width" /> 6 <script src="~/Scripts/jquery-1.10.2.js"></script> 7 <title>JQuery函数</title> 8 <script type="text/javascript"> 9 $(document).ready(function () { 10 $('div[class]').css("background-color", "#0000ff"); 11 }); 12 13 </script> 14 15 </head> 16 <body> 17 <div>G1</div> 18 <div>G2</div> 19 <div>G3</div> 20 <div class="div4">G4</div> 21 22 </body> 23 </html> 24 25 26 View Code

测试结果:

9159金沙官网 54

(2)[attribute = value](取attribute属性值等于value)

9159金沙官网 55 1 <!DOCTYPE html> 2 3 <html> 4 <head> 5 <meta name="viewport" content="width=device-width" /> 6 <script src="~/Scripts/jquery-1.10.2.js"></script> 7 <title>JQuery函数</title> 8 <script type="text/javascript"> 9 $(document).ready(function () { 10 $('div[class=div3]').css("background-color", "#0000ff"); 11 }); 12 13 </script> 14 15 </head> 16 <body> 17 <div>G1</div> 18 <div>G2</div> 19 <div class="div3">G3</div> 20 <div class="div4">G4</div> 21 22 </body> 23 </html> 24 25 26 View Code

测试结果:

9159金沙官网 56

(3) [attribute != value](取attribute属性值不等于value的元素)

9159金沙官网 57 1 <!DOCTYPE html> 2 3 <html> 4 <head> 5 <meta name="viewport" content="width=device-width" /> 6 <script src="~/Scripts/jquery-1.10.2.js"></script> 7 <title>JQuery函数</title> 8 <script type="text/javascript"> 9 $(document).ready(function () { 10 $('div[class!=div3]').css("background-color", "#0000ff"); 11 }); 12 13 </script> 14 15 </head> 16 <body> 17 <div>G1</div> 18 <div>G2</div> 19 <div class="div3">G3</div> 20 <div class="div4">G4</div> 21 22 </body> 23 </html> 24 25 26 View Code

测试结果:

9159金沙官网 58

(4)[attribute $= value](attribute属性值以value结束)

9159金沙官网 59 1 <!DOCTYPE html> 2 3 <html> 4 <head> 5 <meta name="viewport" content="width=device-width" /> 6 <script src="~/Scripts/jquery-1.10.2.js"></script> 7 <title>JQuery函数</title> 8 <script type="text/javascript"> 9 $(document).ready(function () { 10 $('[id$=div]').css("background-color", "#0000ff"); 11 }); 12 13 </script> 14 15 </head> 16 <body> 17 <div id="first_div">G1</div> 18 <div id="second_div">G2</div> 19 <div class="div3" title="3div">G3</div> 20 <div class="div4">G4</div> 21 22 </body> 23 </html> View Code

测试结果:

9159金沙官网 60

(5))[attribute^= value](attribute属性值以value开始)

9159金沙官网 61 1 <!DOCTYPE html> 2 3 <html> 4 <head> 5 <meta name="viewport" content="width=device-width" /> 6 <script src="~/Scripts/jquery-1.10.2.js"></script> 7 <title>JQuery函数</title> 8 <script type="text/javascript"> 9 $(document).ready(function () { 10 $('[id^=first]').css("background-color", "#0000ff"); 11 }); 12 13 </script> 14 15 </head> 16 <body> 17 <div id="first_div">G1</div> 18 <div id="second_div">G2</div> 19 <div class="div3" title="3div">G3</div> 20 <div class="div4">G4</div> 21 22 </body> 23 </html> 24 25 26 View Code

测试结果:

9159金沙官网 62

(6)[attribute *= value](attribute属性值包含value值)

9159金沙官网 63 1 <!DOCTYPE html> 2 3 <html> 4 <head> 5 <meta name="viewport" content="width=device-width" /> 6 <script src="~/Scripts/jquery-1.10.2.js"></script> 7 <title>JQuery函数</title> 8 <script type="text/javascript"> 9 $(document).ready(function () { 10 $('[id*=first]').css("background-color", "#0000ff"); 11 }); 12 13 </script> 14 15 </head> 16 <body> 17 <div id="first_div">G1</div> 18 <div id="second_div">G2</div> 19 <div class="div3" title="3div">G3</div> 20 <div class="div4">G4</div> 21 22 </body> 23 </html> View Code

测试结果:

9159金沙官网 64

注释:在属性选择器中,^$符号和正则表达式的开始结束符号表示的含义是一致的,*模糊匹配,类似于sql中的like '%str%'。

(7)[selector1][selector2](复合型属性过滤器,同时满足多个条件)

9159金沙官网 65 1 <!DOCTYPE html> 2 3 <html> 4 <head> 5 <meta name="viewport" content="width=device-width" /> 6 <script src="~/Scripts/jquery-1.10.2.js"></script> 7 <title>JQuery函数</title> 8 <script type="text/javascript"> 9 $(document).ready(function () { 10 $('div[class=div3][title=3div]').css("background-color", "#0000ff"); 11 }); 12 13 </script> 14 15 </head> 16 <body> 17 <div>G1</div> 18 <div>G2</div> 19 <div class="div3" title="3div">G3</div> 20 <div class="div4">G4</div> 21 22 </body> 23 </html> 24 25 26 View Code

测试结果:

9159金沙官网 66

4.5 子元素过滤选择器

4.5.1 一览表

9159金沙官网 67

4.5.2 代码示例

(1)first-child(表示匹配的第一个元素)和last-child(表示匹配的最后一个子元素)

 需要大家注意的是,:fisrst和:last返回的都是单个元素,而:first-child和:last-child返回的都是集合元素。举个 例子:div:first返回的是整个DOM文档中第一个div元素,而div:first-child是返回所有div元素下的第一个元素合并后的集 合。

9159金沙官网 68 1 <!DOCTYPE html> 2 3 <html> 4 <head> 5 <meta name="viewport" content="width=device-width" /> 6 <script src="~/Scripts/jquery-1.10.2.js"></script> 7 <title>JQuery函数</title> 8 <script type="text/javascript"> 9 $(document).ready(function () { 10 $("div:first-child").css("background-color", "#B2E0FF"); 11 $("div:last-child").css("background-color", "red"); 12 }); 13 </script> 14 </head> 15 <body> 16 <div> 17 <div>1</div> 18 <div>2</div> 19 <p>3</p> 20 </div> 21 <div>4</div> 22 <div>last</div> 23 </body> 24 </html> View Code

测试结果:

9159金沙官网 69

(3)only-child(当某个元素有且仅有一个子元素时,:only-child才会生效)

9159金沙官网 70 1 <!DOCTYPE html> 2 3 <html> 4 <head> 5 <meta name="viewport" content="width=device-width" /> 6 <script src="~/Scripts/jquery-1.10.2.js"></script> 7 <title>JQuery函数</title> 8 <script type="text/javascript"> 9 $(document).ready(function () { 10 $("div:only-child").css("background-color", "red"); 11 }); 12 </script> 13 </head> 14 <body> 15 <div> 16 <div>1</div> 17 <div>2</div> 18 <p>3</p> 19 </div> 20 <div>4</div> 21 <div>last 22 <div>ddd</div> 23 </div> 24 </body> 25 </html> View Code

测试结果:

9159金沙官网 71

(4)nth-child

看到这个就想起英文单词里的,fourth, fifth, sixth……,nth表示第n个,:nth-child就表示第n个child元素。要注意的是,这儿的n不像eq(x)、gt(x)或lt(x)是从 0开始的,它是从1开始的,英文里好像也没有zeroth这样的序号词吧。

:nth-child有三种用法:

1) :nth-child(x),获取第x个子元素
2) :nth-child(even)和:nth-child(odd),从1开始,获取第偶数个元素或第奇数个元素

3) :nth-child(xn+y),x>=0,y>=0。例如x = 3, y = 0时就是3n,表示取第3n个元素(n>=0)。实际上xn+y是上面两种的通项式。(当x=0,y>=0时,等同于:hth- child(x);当x=2,y=0时,等同于nth-child(even);当x=2,y=1时,等同于:nth-child(odd))

4.6 表单对象属性过滤选择器

4.6.1 一览表

9159金沙官网 72

4.6.2 代码示例

(1):enabled和:disabled(取可用或不可用元素)

:enabled和:diabled的匹配范围包括input, select, textarea

9159金沙官网 73 1 <!DOCTYPE html> 2 3 <html> 4 <head> 5 <meta name="viewport" content="width=device-width" /> 6 <script src="~/Scripts/jquery-1.10.2.js"></script> 7 <title>JQuery函数</title> 8 <script type="text/javascript"> 9 $(document).ready(function () { 10 $(':enabled').css('border', '1px solid #FF0000'); 11 $(':disabled').css('border', '1px solid #0000FF'); 12 }); 13 14 </script> 15 16 </head> 17 <body> 18 <div> 19 <input type="text" value="可用的文本框" /> 20 </div> 21 <div> 22 <input type="text" disabled="disabled" value="不可用的文本框" /> 23 </div> 24 <div> 25 <textarea disabled="disabled">不可用的文本域</textarea> 26 </div> 27 <div> 28 <select disabled="disabled"> 29 <option>English</option> 30 <option>简体中文</option> 31 </select> 32 </div> 33 </body> 34 </html> View Code

测试结果:

9159金沙官网 74

(2):checked(取选中的单选框或复选框元素)

9159金沙官网 75 1 <!DOCTYPE html> 2 3 <html> 4 <head> 5 <meta name="viewport" content="width=device-width" /> 6 <script src="~/Scripts/jquery-1.10.2.js"></script> 7 <title>JQuery函数</title> 8 <script type="text/javascript"> 9 $(document).ready(function () { 10 $(".btn1").click(function () { 11 $(":checked").hide(); 12 }); 13 }); 14 </script> 15 16 </head> 17 <body> 18 <input type="radio" name="sex" value="male" checked="checked" /> Male 19 <br /> 20 <input type="radio" name="sex" value="female" /> Female 21 <br /> 22 I have a bike: 23 <input type="checkbox" name="vehicle" value="Bike" /> 24 <br /> 25 I have a car: 26 <input type="checkbox" name="vehicle" value="Car" checked="checked" /> 27 <br /> 28 I have an airplane: 29 <input type="checkbox" name="vehicle" value="Airplane" /> 30 <button class="btn1">Hide Checked Options</button> 31 32 </body> 33 </html> View Code

(3):selected(取下拉列表被选中的元素)

9159金沙官网 76 1 <html> 2 <head> 3 <script type="text/javascript" src="/jquery/jquery.js"></script> 4 <script type="text/javascript"> 5 $(document).ready(function(){ 6 $(".btn1").click(function(){ 7 $(":selected").hide(); 8 }); 9 }); 10 </script> 11 </head> 12 <body> 13 14 <select multiple="multiple"> 15 <option>Volvo</option> 16 <option selected="selected">Saab</option> 17 <option>Mercedes</option> 18 <option>Audi</option> 19 </select> 20 <br /> 21 <button class="btn1">Hide Selected</button> 22 </body> 23 </html> View Code

5   表单选择器

5.1 一览表

9159金沙官网 77

5.2 测试代码

(1):input()(选择所有input元素)

9159金沙官网 78 1 <!DOCTYPE html> 2 3 <html> 4 <head> 5 <meta name="viewport" content="width=device-width" /> 6 <script src="~/Scripts/jquery-1.10.2.js"></script> 7 <title>JQuery函数</title> 8 <script type="text/javascript"> 9 $(document).ready(function () { 10 $(":input").css("background-color", "#B2E0FF"); 11 }); 12 </script> 13 </head> 14 <body> 15 <form action=""> 16 Name: <input type="text" name="user" /> 17 <br /> 18 Password: <input type="password" name="password" /> 19 <br /> 20 <button type="button">Useless Button</button> 21 <input type="button" value="Another useless button" /> 22 <br /> 23 <input type="reset" value="Reset" /> 24 <input type="submit" value="Submit" /> 25 <br /> 26 </form> 27 </body> 28 </html> View Code

测试结果:

9159金沙官网 79

(2):text(选取所有text元素)

9159金沙官网 80 1 <!DOCTYPE html> 2 3 <html> 4 <head> 5 <meta name="viewport" content="width=device-width" /> 6 <script src="~/Scripts/jquery-1.10.2.js"></script> 7 <title>JQuery函数</title> 8 <script type="text/javascript"> 9 $(document).ready(function () { 10 $(":text").css("background-color", "#B2E0FF"); 11 }); 12 </script> 13 </head> 14 <body> 15 <form action=""> 16 Name: <input type="text" name="user" /> 17 <br /> 18 Password: <input type="password" name="password" /> 19 <br /> 20 <button type="button">Useless Button</button> 21 <input type="button" value="Another useless button" /> 22 <br /> 23 <input type="reset" value="Reset" /> 24 <input type="submit" value="Submit" /> 25 <br /> 26 </form> 27 </body> 28 </html> View Code

测试结果:

9159金沙官网 81

(3):select和:button

(4)其他表单元素比较简单,在此不列举。

6   参考文献

【01】

【02】

【03】

【04】

 

选择器,详解jquery选择器 1 概述 本篇文章为穿插文章,ASP.NET MVC系列目前写了如下几篇: 详解google Chrome浏览器(理论篇) 详解...

<body>
  <div id="w">
    <div id="content">
      <h1>World Currencies Autocomplete Search</h1>
      <p>Just start typing and results will be supplied from the JavaScript. Check out <a href=" Autocomplete</a> on Github.</a></p>
      
      <div id="searchfield">
        <form><input type="text" name="currency" class="biginput" id="autocomplete"></form>
      </div><!-- @end #searchfield -->
      
      <div id="outputbox">
        <p id="outputcontent">Choose a currency and the results will display here.</p>
      </div>
    </div><!-- @end #content -->
  </div><!-- @end #w -->
</body>
</html>

[java] view plain copy

第四章 jQuery中的事件,第四章jQuery事件

  1.加载DOM

  jQuery中,在$(document).ready()方法内注册的事件,只要DOM就绪就会被执行,此时可能元素的关联文件未下载完。

  jQuery中的 load()方法,会在元素的onload事件中绑定一个处理函数。比如$(window).load(function(){...}),等价于JavaScript中的window.onload=function(){...},该方法需要等网页所有元素都加载完(包括管理文件)。

  2.事件绑定

  在文档装载完之后,可以为元素绑定事件来完成一些操作。可以使用bind()方法来对匹配元素进行特定的事件绑定。

  语法: bind(type,[data],fn);

9159金沙官网 82<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "; <html xmlns="; <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>4-2-3</title> <script src="../../scripts/jquery-1.3.1.js" type="text/javascript"></script> <link rel="stylesheet" type="text/css" href="../../css/style.css" /> <script type="text/javascript"> $(function(){ $("#panel h5.head").bind("click",function(){ var $content = $(this).next(); if($content.is(":visible")){ $content.hide(); }else{ $content.show(); } }) }) </script> </head> <body> <div id="panel"> <h5 class="head">什么是jQuery?</h5> <div class="content"> jQuery是继Prototype之后又一个优秀的JavaScript库,它是一个由 John Resig 创建于2006年1月的开源项目。jQuery凭借简洁的语法和跨平台的兼容性,极大地简化了JavaScript开发人员遍历HTML文档、操作DOM、处理事件、执行动画和开发Ajax。它独特而又优雅的代码风格改变了JavaScript程序员的设计思路和编写程序的方式。 </div> </div> </body> </html> View Code 9159金沙官网 83<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "; <html xmlns="; <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>4-2-4</title> <script src="../../scripts/jquery-1.3.1.js" type="text/javascript"></script> <link rel="stylesheet" type="text/css" href="../../css/style.css" /> <script type="text/javascript"> $(function(){ $("#panel h5.head").bind("mouseover",function(){ $(this).next().show(); }); $("#panel h5.head").bind("mouseout",function(){ $(this).next().hide(); }) }) </script> </head> <body> <div id="panel"> <h5 class="head">什么是jQuery?</h5> <div class="content"> jQuery是继Prototype之后又一个优秀的JavaScript库,它是一个由 John Resig 创建于2006年1月的开源项目。jQuery凭借简洁的语法和跨平台的兼容性,极大地简化了JavaScript开发人员遍历HTML文档、操作DOM、处理事件、执行动画和开发Ajax。它独特而又优雅的代码风格改变了JavaScript程序员的设计思路和编写程序的方式。 </div> </div> </body> </html> View Code

  3.合成事件

  jQuery中有2个合成事件,hover()方法与toggle()方法。

  hover() 语法:hover(enter,leave);  用来模拟光标悬停事件。

9159金沙官网 84<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "; <html xmlns="; <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>4-3-1</title> <script src="../../scripts/jquery-1.3.1.js" type="text/javascript"></script> <link rel="stylesheet" type="text/css" href="../../css/style.css" /> <script type="text/javascript"> $(function(){ $("#panel h5.head").hover(function(){ $(this).next().show(); },function(){ $(this).next().hide(); }) }) </script> </head> <body> <div id="panel"> <h5 class="head">什么是jQuery?</h5> <div class="content"> jQuery是继Prototype之后又一个优秀的JavaScript库,它是一个由 John Resig 创建于2006年1月的开源项目。jQuery凭借简洁的语法和跨平台的兼容性,极大地简化了JavaScript开发人员遍历HTML文档、操作DOM、处理事件、执行动画和开发Ajax。它独特而又优雅的代码风格改变了JavaScript程序员的设计思路和编写程序的方式。 </div> </div> </body> </html> View Code

  toggle()语法:toggle(fn1,fn2,...fnN); 用来模拟鼠标连续单击事件。

9159金沙官网 85<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "; <html xmlns="; <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>4-3-3</title> <script src="../../scripts/jquery-1.3.1.js" type="text/javascript"></script> <link rel="stylesheet" type="text/css" href="../../css/style.css" /> <script type="text/javascript"> $(function(){ $("#panel h5.head").toggle(function(){ $(this).next().toggle(); },function(){ $(this).next().toggle(); }) }) /*$(function(){ $("#panel h5.head").click(function(){ $(this).next().toggle(); }) })*/ </script> </head> <body> <div id="panel"> <h5 class="head">什么是jQuery?</h5> <div class="content"> jQuery是继Prototype之后又一个优秀的JavaScript库,它是一个由 John Resig 创建于2006年1月的开源项目。jQuery凭借简洁的语法和跨平台的兼容性,极大地简化了JavaScript开发人员遍历HTML文档、操作DOM、处理事件、执行动画和开发Ajax。它独特而又优雅的代码风格改变了JavaScript程序员的设计思路和编写程序的方式。 </div> </div> </body> </html> View Code

  4.事件冒泡

  意思就是说,页面上有多个元素响应同一个事件。事件会按照DOM的层次结构像水泡一样不断往上至顶。

9159金沙官网 86<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "; <html xmlns="; <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>4-4-1</title> <style type="text/css"> * { margin: 0; padding: 0; } body { font-size: 13px; line-height: 130%; padding: 60px; } #content { width: 220px; border: 1px solid #0050D0; background: #96E555; } span { width: 200px; margin: 10px; background: #666666; cursor: pointer; color: white; display: block; } p { width: 200px; background: #888; color: white; height: 16px; } </style> <script src="../../scripts/jquery-1.3.1.js" type="text/javascript"></script> <script type="text/javascript"> $(function () { // 为span元素绑定click事件 $('span').bind("click", function () { var txt = $('#msg').html() + "<p>内层span元素被点击.<p/>"; $('#msg').html(txt); }); // 为div元素绑定click事件 $('#content').bind("click", function () { var txt = $('#msg').html() + "<p>外层div元素被点击.<p/>"; $('#msg').html(txt); }); // 为body元素绑定click事件 $("body").bind("click", function () { var txt = $('#msg').html() + "<p>body元素被点击.<p/>"; $('#msg').html(txt); }); }) </script> </head> <body> <div id="content"> 外层div元素 <span>内层span元素</span> 外层div元素 </div> <div id="msg"> </div> </body> </html> View Code

  停止冒泡

9159金沙官网 87<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "; <html xmlns="; <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Panel</title> <style type="text/css"> * { margin: 0; padding: 0; } body { font-size: 13px; line-height: 130%; padding: 60px; } #content { width: 220px; border: 1px solid #0050D0; background: #96E555; } span { width: 200px; margin: 10px; background: #666666; cursor: pointer; color: white; display: block; } p { width: 200px; background: #888; color: white; height: 16px; } </style> <script src="../../scripts/jquery-1.3.1.js" type="text/javascript"></script> <script type="text/javascript"> $(function () { // 为span元素绑定click事件 $('span').bind("click", function (event) { var txt = $('#msg').html() + "<p>内层span元素被点击.<p/>"; $('#msg').html(txt); event.stopPropagation(); // 阻止事件冒泡 }); // 为div元素绑定click事件 $('#content').bind("click", function (event) { var txt = $('#msg').html() + "<p>外层div元素被点击.<p/>"; $('#msg').html(txt); event.stopPropagation(); // 阻止事件冒泡 }); // 为body元素绑定click事件 $("body").bind("click", function () { var txt = $('#msg').html() + "<p>body元素被点击.<p/>"; $('#msg').html(txt); }); }) </script> </head> <body> <div id="content"> 外层div元素 <span>内层span元素</span> 外层div元素 </div> <div id="msg"> </div> </body> </html> View Code 9159金沙官网 88<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "; <html xmlns="; <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>4-4-4</title> <style type="text/css"> * { margin: 0; padding: 0; } body { font-size: 13px; line-height: 130%; padding: 60px; } #content { width: 220px; border: 1px solid #0050D0; background: #96E555; } span { width: 200px; margin: 10px; background: #666666; cursor: pointer; color: white; display: block; } p { width: 200px; background: #888; color: white; height: 16px; } </style> <script src="../../scripts/jquery-1.3.1.js" type="text/javascript"></script> <script type="text/javascript"> $(function () { // 为span元素绑定click事件 $('span').bind("click", function (event) { var txt = $('#msg').html() + "<p>内层span元素被点击.<p/>"; $('#msg').html(txt); return false; }); // 为div元素绑定click事件 $('#content').bind("click", function (event) { var txt = $('#msg').html() + "<p>外层div元素被点击.<p/>"; $('#msg').html(txt); return false; }); // 为body元素绑定click事件 $("body").bind("click", function () { var txt = $('#msg').html() + "<p>body元素被点击.<p/>"; $('#msg').html(txt); }); }) </script> </head> <body> <div id="content"> 外层div元素 <span>内层span元素</span> 外层div元素 </div> <div id="msg"> </div> </body> </html> View Code

  阻止默认行为

9159金沙官网 89<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "; <html xmlns="; <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title></title> <script src="../../scripts/jquery-1.3.1.js" type="text/javascript"></script> <script type="text/javascript"> $(function () { $("#sub").bind("click", function (event) { var username = $("#username").val(); //获取元素的值 if (username == "") { //判断值是否为空 $("#msg").html("<p>文本框的值不能为空.</p>"); //提示信息 event.preventDefault(); //阻止默认行为 ( 表单提交 ) } }) }) </script> </head> <body> <form action="test.html"> 用户名:<input type="text" id="username" /> <br /> <input type="submit" value="提交" id="sub" /> </form> <div id="msg"> </div> </body> </html> View Code 9159金沙官网 90<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "; <html xmlns="; <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title></title> <script src="../../scripts/jquery-1.3.1.js" type="text/javascript"></script> <script type="text/javascript"> $(function () { $("#sub").bind("click", function (event) { var username = $("#username").val(); //获取元素的值 if (username == "") { //判断值是否为空 $("#msg").html("<p>文本框的值不能为空.</p>"); //提示信息 return false; } }) }) </script> </head> <body> <form action="test.html"> 用户名:<input type="text" id="username" /> <br /> <input type="submit" value="提交" id="sub" /> </form> <div id="msg"> </div> </body> </html> View Code

  5.事件对象的属性

  jQuery对事件对象常用的属性进行了封装。

  (1)event.type 可以获取事件的类型

9159金沙官网 91<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "; <html xmlns="; <head> <title></title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <!-- 引入jQuery --> <script src="../../scripts/jquery-1.3.1.js" type="text/javascript"></script> <script> $(function () { $("a").click(function (event) { alert(event.type); //获取事件类型 return false; //阻止链接跳转 }); }) </script> </head> <body> <a href=' me .</a> </body> </html> View Code

  (2)event.target 可以获取出发事件的元素

9159金沙官网 92<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "; <html xmlns="; <head> <title></title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <!-- 引入jQuery --> <script src="../../scripts/jquery-1.3.1.js" type="text/javascript"></script> <script> $(function () { $("a[href= (event) { alert(event.target.href); //获取触发事件的<a>元素的href属性值 return false; //阻止链接跳转 }); }) </script> </head> <body> <a href=' me .</a> </body> </html> View Code

  (3)event.pageX和event.pageY 可以获取光标相对于页面的x坐标与y坐标。

9159金沙官网 93<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "; <html xmlns="; <head> <title></title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <!-- 引入jQuery --> <script src="../../scripts/jquery-1.3.1.js" type="text/javascript"></script> <script> $(function () { $("a").click(function (event) { alert("Current mouse position: " + event.pageX + ", " + event.pageY); //获取鼠标当前相对于页面的坐标 return false; //阻止链接跳转 }); }) </script> </head> <body> <a href=' me .</a> </body> </html> View Code

  (4)event.which 可以在鼠标单击事件中获取鼠标的左中右键,也可以获取键盘键。

9159金沙官网 94<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "; <html xmlns="; <head> <title></title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <!-- 引入jQuery --> <script src="../../scripts/jquery-1.3.1.js" type="text/javascript"></script> <script> $(function(){ $("a").mousedown(function(e){ alert(e.which) // 1 = 鼠标左键 left; 2 = 鼠标中键; 3 = 鼠标右键 return false;//阻止链接跳转 }) }) </script> </head> <body> <a href=' me .</a> </body> </html> View Code 9159金沙官网 95<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "; <html xmlns="; <head> <title></title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <!-- 引入jQuery --> <script src="../../scripts/jquery-1.3.1.js" type="text/javascript"></script> <script> $(function () { $("input").keyup(function (e) { alert(e.which); }) }) </script> </head> <body> <input /> </body> </html> View Code

  6.移除事件

  unbind([type],[data])方法用来移除事件。

9159金沙官网 96<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "; <html xmlns="; <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>4-6-2</title> <style type="text/css"> * { margin: 0; padding: 0; } body { font-size: 13px; line-height: 130%; padding: 60px; } p { width: 200px; background: #888; color: white; height: 16px; } </style> <script src="../../scripts/jquery-1.3.1.js" type="text/javascript"></script> <script type="text/javascript"> $(function () { $('#btn').bind("click", function () { $('#test').append("<p>我的绑定函数1</p>"); }).bind("click", function () { $('#test').append("<p>我的绑定函数2</p>"); }).bind("click", function () { $('#test').append("<p>我的绑定函数3</p>"); }); $('#delAll').click(function () { $('#btn').unbind("click"); }); }) </script> </head> <body> <button id="btn"> 点击我</button> <div id="test"> </div> <button id="delAll"> 删除所有事件</button> </body> </html> View Code 9159金沙官网 97<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "; <html xmlns="; <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Panel</title> <style type="text/css"> * { margin: 0; padding: 0; } body { font-size: 13px; line-height: 130%; padding: 60px; } p { width: 200px; background: #888; color: white; height: 16px; } </style> <script src="../../scripts/jquery-1.3.1.js" type="text/javascript"></script> <script type="text/javascript"> $(function () { $('#btn').bind("click", myFun1 = function () { $('#test').append("<p>我的绑定函数1</p>"); }).bind("click", myFun2 = function () { $('#test').append("<p>我的绑定函数2</p>"); }).bind("click", myFun3 = function () { $('#test').append("<p>我的绑定函数3</p>"); }); $('#delTwo').click(function () { $('#btn').unbind("click", myFun2); }); }) </script> </head> <body> <button id="btn"> 点击我</button> <div id="test"> </div> <button id="delTwo"> 删除第二个事件</button> </body> </html> View Code

  one(type,[data],fn)方法可以为元素绑定处理函数,当处理函数触发一次后立即删除。

9159金沙官网 98<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "; <html xmlns="; <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>4-6-4</title> <style type="text/css"> * { margin: 0; padding: 0; } body { font-size: 13px; line-height: 130%; padding: 60px; } p { width: 200px; background: #888; color: white; height: 16px; } </style> <script src="../../scripts/jquery-1.3.1.js" type="text/javascript"></script> <script type="text/javascript"> $(function () { $('#btn').one("click", function () { $('#test').append("<p>我的绑定函数1</p>"); }).one("click", function () { $('#test').append("<p>我的绑定函数2</p>"); }).one("click", function () { $('#test').append("<p>我的绑定函数3</p>"); }); }) </script> </head> <body> <button id="btn"> 点击我</button> <div id="test"> </div> </body> </html> View Code

  7.模拟操作

  jQuery中可以使用trigger()方法完成模拟操作。

9159金沙官网 99<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "; <html xmlns="; <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title></title> <style type="text/css"> * { margin: 0; padding: 0; } body { font-size: 13px; line-height: 130%; padding: 60px; } p { width: 200px; background: #888; color: white; height: 16px; } </style> <script src="../../scripts/jquery-1.3.1.js" type="text/javascript"></script> <script type="text/javascript"> $(function () { $('#btn').bind("click", function () { $('#test').append("<p>我的绑定函数1</p>"); }).bind("click", function () { $('#test').append("<p>我的绑定函数2</p>"); }).bind("click", function () { $('#test').append("<p>我的绑定函数3</p>"); }); $('#btn').trigger("click"); }) </script> </head> <body> <button id="btn"> 点击我</button> <div id="test"> </div> </body> </html> View Code 9159金沙官网 100<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "; <html xmlns="; <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title></title> <style type="text/css"> * { margin: 0; padding: 0; } body { font-size: 13px; line-height: 130%; padding: 60px; } p { width: 200px; background: #888; color: white; height: 16px; } </style> <script src="../../scripts/jquery-1.3.1.js" type="text/javascript"></script> <script type="text/javascript"> $(function () { $('#btn').bind("myClick", function (event, message1, message2) { $('#test').append("<p>" + message1 + message2 + "</p>"); }); $('#btn').click(function () { $(this).trigger("myClick", ["我的自定义", "事件"]); }).trigger("myClick", ["我的自定义", "事件"]); }) </script> </head> <body> <button id="btn"> 点击我</button> <div id="test"> </div> </body> </html> View Code

 PS:参考文献《锋利的jQuery》

具体源码地址  

  1. <%@ page language="java" import="java.util.*" contentType="text/html; charset=utf-8"%>  
  2. <%  
  3.    String path = request.getContextPath();  
  4.    String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";  
  5. %>  
  6. <html>  
  7.     <head>  
  8.         <!-- Page title -->  
  9.         <title>imooc - Login</title>  
  10.         <!-- End of Page title -->  
  11.         <!-- Libraries -->  
  12.         <link type="text/css" href="css/login.css" rel="stylesheet" />      
  13.         <link type="text/css" href="css/smoothness/jquery-ui-1.7.2.custom.html" rel="stylesheet" />     
  14.         <script type="text/javascript" src="js/jquery-1.3.2.min.js"></script>  
  15.         <script type="text/javascript" src="js/easyTooltip.js"></script>  
  16.         <script type="text/javascript" src="js/jquery-ui-1.7.2.custom.min.js"></script>  
  17.         <!-- End of Libraries -->   
  18.     </head>  
  19.     <body>  
  20.     <div id="container">  
  21.         <div class="logo">  
  22.             <a href="#"><img src="logo.png" alt="" /></a>  
  23.         </div>  
  24.         <div id="box">  
  25.         <%  
  26.             String loginUser = "";  
  27.             if(session.getAttribute("loginUser") != null) {  
  28.                 loginUser = session.getAttribute("loginUser").toString();  
  29.             }  
  30.         %>  
  31.               
  32.             欢迎您<font color = "red"> <%=loginUser %></font>,登陆成功!  
  33.         </div>  
  34.     </div>  
  35.     </body>  
  36. </html>  

    login_failure.jsp:

jquery 事件中的事件问题

试一下在tr的事件里加一个判断,看<a>有没有焦点.有就返回.  

jQuery中的事件,第四章jQuery事件 1.加载DOM jQuery中,在$(document).ready()方法内注册的事件,只要DOM就绪就会被执行,此时可能元素的关...

 

[java] view plain copy

 

  1. <%@ page language="java" import="java.util.*" contentType="text/html; charset=utf-8"%>  
  2. <%  
  3.    String path = request.getContextPath();  
  4.    String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";  
  5. %>  
  6. <html>  
  7.     <head>  
  8.         <!-- Page title -->  
  9.         <title>imooc - Login</title>  
  10.         <!-- End of Page title -->  
  11.         <!-- Libraries -->  
  12.         <link type="text/css" href="css/login.css" rel="stylesheet" />      
  13.         <link type="text/css" href="css/smoothness/jquery-ui-1.7.2.custom.html" rel="stylesheet" />     
  14.         <script type="text/javascript" src="js/jquery-1.3.2.min.js"></script>  
  15.         <script type="text/javascript" src="js/easyTooltip.js"></script>  
  16.         <script type="text/javascript" src="js/jquery-ui-1.7.2.custom.min.js"></script>  
  17.         <!-- End of Libraries -->   
  18.     </head>  
  19.     <body>  
  20.     <div id="container">  
  21.         <div class="logo">  
  22.             <a href="#"><img src="logo.png" alt="" /></a>  
  23.         </div>  
  24.         <div id="box">  
  25.             <form action="dologin.jsp" method="post">  
  26.             <p class="main">  
  27.                 <label>用户名: </label>  
  28.                 <input name="username" value="" />   
  29.                 <label>密码: </label>  
  30.                 <input type="password" name="password" value="">    
  31.             </p>  
  32.             <p class="space">  
  33.                 <input type="submit" value="登录" class="login" style="cursor: pointer;"/>  
  34.             </p>  
  35.             </form>  
  36.         </div>  
  37.     </div>  
  38.     </body>  
  39. </html>  

 

[java] view plain copy

<!doctype html>
<html lang="en-US">
<head>
  <meta http-equiv="Content-Type" content="text/html;charset=utf-8">
  <title>Input Autocomplete Suggestions Demo</title>
  <link rel="stylesheet" type="text/css" media="all" href="style.css">
  <script type="text/javascript" src="js/codedata.js"></script>
  <script type="text/javascript" src="js/jquery-1.9.1.min.js"></script>
  <script type="text/javascript" src="js/jquery.autocomplete.min.js"></script>
  <script type="text/javascript" src="js/currency-autocomplete.js"></script>
</head>

  1. <%@ page language="java" import="java.util.*" contentType="text/html; charset=utf-8"%>  
  2. <%  
  3.    String path = request.getContextPath();  
  4.    String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";  
  5. %>  
  6. <html>  
  7.     <head>  
  8.         <!-- Page title -->  
  9.         <title>imooc - Login</title>  
  10.         <!-- End of Page title -->  
  11.         <!-- Libraries -->  
  12.         <link type="text/css" href="css/login.css" rel="stylesheet" />      
  13.         <link type="text/css" href="css/smoothness/jquery-ui-1.7.2.custom.html" rel="stylesheet" />     
  14.         <script type="text/javascript" src="js/jquery-1.3.2.min.js"></script>  
  15.         <script type="text/javascript" src="js/easyTooltip.js"></script>  
  16.         <script type="text/javascript" src="js/jquery-ui-1.7.2.custom.min.js"></script>  
  17.         <!-- End of Libraries -->   
  18.     </head>  
  19.     <body>  
  20.     <div id="container">  
  21.         <div class="logo">  
  22.             <a href="#"><img src="logo.png" alt="" /></a>  
  23.         </div>  
  24.         <div id="box">  
  25.             登录失败!检查用户或者密码  
  26.             <a href="login.jsp">返回登录界面</a>  
  27.         </div>  
  28.     </div>  
  29.     </body>  
  30. </html>  

 

登录界面 login.jsp:

最近用nodeclub实现股票的输入关键字自动补全股票信息进行搜索功能,原先用jQuery-ui,结果jQuery-ui库太大,所以考虑用其他插件,最终选择使用autocomplete.js,控件简单用着方便。留下记录

 

[java] view plain copy

这里注意的是:

9159金沙官网 101

   成功界面:login_success.jsp

 

 

 

对登录的响应 dologin.jsp:

 

 

   request传送信息需要设置编码方式,request.setCharacterEncoding("utf-8");

   request.getRequestDispatcher("login_success.jsp")取得一个RequestDispatcher,一个请求分发器对象,它的方法forward(request,response)作用是将请求转发到login_success.jsp,request封装了请求信息,response封装了响应信息。注意是forward方式,这种方式只转发请求,不产生新的request对象。如下图:

 

  1. <%@ page language="java" import="java.util.*" contentType="text/html; charset=utf-8"%>  
  2. <%  
  3.   String path = request.getContextPath();  
  4.   String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";  
  5.   String username ="";  
  6.   String password ="";  
  7.   request.setCharacterEncoding("utf-8");//防止中文乱码  
  8.     
  9.   username = request.getParameter("username");  
  10.   password = request.getParameter("password");  
  11.     
  12.   //如果用户和密码都等于admin,则登录成功  
  13.   if("admin".equals(username)&&"admin".equals(password))  
  14.   {  
  15.      session.setAttribute("loginUser", username);  
  16.      request.getRequestDispatcher("login_success.jsp").forward(request, response);  
  17.        
  18.   }  
  19.   else  
  20.   {  
  21.      response.sendRedirect("login_failure.jsp");  
  22.   }  
  23. %>  

 

本文由9159.com发布于操作系统,转载请注明出处:对登录的响应 dologin.jsp9159金沙官网:,ASP.NET M

关键词:

上一篇:没有了
下一篇:没有了