Web前端学习笔记之jQuery选择器
JQuery过滤器
经过一晚上的查找整理,终于整理出一套应该算最全面的JQuery选择过滤器的方法了。所有代码均经过测试。
首先HTML代码

<head>
<script type="text/javascript" src="JQuery/jquery-1.5.1.js"></script>
</head>
<body>
<form name="form1" id="form1" class="form1" action="" method="post">
<table name="table1" id="table1" class="table1">
<tr name="tr1" id="tr1" class="tr1">
<td name="td11" id="td11" class="td11" nowrap>
<input type="text" name="text11" id="text11" class="text11" value="text11"/>
<input type="button" name="button11" id="button11" class="button11" value="button11"/>
</td>
<td name="td12" id="td12" class="td12">
<input type="text" name="text12" id="text12" class="text12" value="text12"/>
<input type="hidden" name="hidden12" id="hidden12" class="hidden12" value="hidden12"/>
</td>
<td name="td13" id="td13" class="td13">
<input type="text" name="text13" id="text13" class="text13" value="text13"/>
</td>
</tr>
<tr name="tr2" id="tr2" class="tr2">
<td name="td21" id="td21" class="td21">
<input type="password" name="password21" id="password21" class="password21" value="password21"/>
<input type="radio" name="radio21" id="radio21" class="radio21" value="radio21" checked/>
<input type="checkbox" name="checkbox21" id="checkbox21" class="checkbox21" value="checkbox21" checked/>
</td>
<td name="td22" id="td22" class="td22" nowrap>
<input type="submit" name="submit22" id="submit22" class="submit22" value="submit22"/>
<input type="image" name="image22" id="image22" class="image22" value="image22"/>
<input type="reset" name="reset22" id="reset22" class="reset22" value="reset22"/>
</td>
<td name="td23" id="td23" class="td23">
<input type="file" name="file23" id="file23" class="file23" value="file23"/>
</td>
</tr>
<tr name="tr3" id="tr3" class="tr3">
<td name="td31" id="td31" class="td31">
<select name="select31" size="1">
<option value="select311">option1</option>
<option value="select312" selected>option2</option>
<option value="select313">option3</option>
</select>
</td>
<td name="td32" id="td32" class="td32"></td>
<td name="td33" id="td33" class="td33"></td>
</tr>
</table>
</form>
<h1>你好世界!</h1>
</body>
</html>

JS代码
1.DOM对象与JQuery包装集
1.通过document.getElementById(),document.getElementsByName()等取的就是DOM对象或DOM对象集,前者取的是对象,后者取得DOM对象集
var text11_dom=document.getElementById("text11");
var text11_dom=document.getElementsByName("text11")[];
var text11_dom=document.all.text11;//此处text11即可以是name值也可以是id值
var text11_dom=document.all[];
2.如果要使用JQuery提供的函数首先要构造JQuery包装集,通过$()返回的即是JQuery包装集。
var text11_jquery=$("#text11");
2.JQuery包装集与DOM对象互相转换
1.DOM对象不能使用JQuery属性方法,但DOM对象可以通过$()转换成JQuery包装集
var text11_dom=document.getElementById("text11");
var text11_jquery=$(text11_dom);
2.JQuery包装集可以使用部分DOM对象的属性方法如.length,但也有个别属性方法不能使用如.value,可以通过在JQuery包装集后面加中括号及索引值获取对应DOM对象
var text11_dom=$("#text11")[];
3.在each循环时或触发事件时的this也是DOM对象
$("#text11").click(function(){
var text11_dom_value=this.value;
alert(text11_dom_value);
});
3.$符号在JQuery中代表对JQuery对象的引用,JQuery的核心方法有四个
1.jQuery(html[,ownerDocument]):根据HTML原始字符串动态创建Dom元素
$("<div><p>Hello!</p></div>").appendTo("body");
2.jQuery( elements ):将一个或多个Dom对象封装为jQuery包装集,就是上面的DOM对象与JQuery包装集转换
3.jQuery( callback ):$(document).ready()的简写方式
$(function(){
alert("Hello!");
});
4.JQuery(selector[,context]):在指定范围内查找符合条件的JQuery包装集,context为查找范围,context可以是DOM对象集也可以是JQuery包装集
在所有tr标签中查找id为text11元素的JQuery包装集
var text11_query=$("#text11","tr");
===================jQuery选择器===================
1. 基础选择器 Basics
1.根据标签名进行选择
var input_query=$("input");
2.根据id值选取
var text11_query=$("#text11");
3.根据class值进行选取
var text11_query=$(".text11");
4.同时选择多个符合条件的JQuery包装集用,号分隔条件
var text_query=$("#text11,.text12");
5.选择所有DOM元素
var all_query=$("*");
2.层次选择器 Hierarchy
1.从所有tr标签中获取其下面的所有id值为text11的元素
var text11_query=$("tr #text11");
2.获取所有td标签下的所有直接input子元素
var input_query=$("td>input");
3.获取id为text11元素后面的class为button11元素,只获取一个符合条件的元素。text11与button11在地位上属于同级关系
var button11_query=$("#text11+.button11");
4.获取id为text11元素后面的所有class为button11的元素
var button11_query=$("#text11~.button11");
3.基本过滤器 Basic Filters
1.获取第一个input元素
var input_query=$("input:first");
2.获取最后一个input元素
var input_query=$("input:last");
3.获取所有未被选中的input元素
var input_query=$("input:not(:checked)");
4.第一个input元素算一,查找所有第奇数个的input元素
var input_query=$("input:even");
5.从第二个input算起,查找所有第偶数个的input元素
var input_query=$("input:odd");
6.查找索引为1的input元素,索引值从0算起
var input_query=$("input:eq(1)");
7.查找索引大于0的所有input元素
var input_query=$("input:gt(0)");
8.查找索引小于2的所有input元素
var input_query=$("input:lt(2)");
9.获取页面所有<h>标题元素
var h_query=$(":header");
10.获取所有正在执行动画效果的元素
var animated_query=$(":animated");
4. 内容过滤器 Content Filters
1.查找所有html内容含有"你好世界!"的h1元素
var h1_query=$("h1:contains('你好世界!')");
2.获取所有不含子标签或html内容为空的td元素
var td_query=$("td:empty");
3.查找所有含有input子元素的td元素
var td_query=$("td:has(input)");
4.查找所有含有子标签或有html内容的td元素
var td_query=$("td:parent");
5.可见性过滤器 Visibility Filters
1.查找所有隐藏的input元素
var input_query=$("input:hidden");
2.查找所有可见的input元素
var input_query=$("input:visible");
6.属性过滤器 Attribute Filters
以下id,name等属性名,也可换成其他属性名,或自定义的属性名
1.查找所有含有id属性的input元素
var input_query=$("input[id]");
2.查找name值为text11的input元素
var input_query=$("input[name='text11']");
3.查找name值不等于text11的所有input元素
var input_query=$("input[name!='text11']");
4.查找name值以text开头的input元素
var input_query=$("input[name^='text']");
5.查找name值以11结尾的所有input元素
var input_query=$("input[name$='11']");
6.查找name值中含有ext的所有input元素
var input_query=$("input[name*='ext']");
7.查找所有含有id属性并且name值中含有ext的input元素
var input_query=$("input[id][name*='ext']");
7.子元素过滤器 Child Filters
1.查找所有在父元素中的所有子元素中排第2的input元素
nth-child()里参数可选even在这里算偶数,odd在这里算奇数,n任意数即选取所有有父元素的input元素,数字是直接选排在第几个的input元素,第一个input元素算一
var input_query=$("input:nth-child(2)");
2.查找所有在父元素中的所有子元素中排第一的input元素
var input_query=$("input:first-child");
3.查找所有在父元素中所有子元素中排最后一个的input元素
var input_query=$("input:last-child");
4.查找所有在父元素中是唯一子元素的input元素
var input_query=$("input:only-child");
8.表单选择器 Forms
1.查找所有input元素
var input_query=$(":input");
2.查找所有文本框元素
var text_query=$(":text");
3.查找所有密码框元素
var password_query=$(":password");
4.查找所有复选框
var checkbox_query=$(":checkbox");
5.查找所有提交按钮元素
var submit_query=$(":submit");
6.查找所有图像域元素
var image_query=$(":image");
7.查找所有重置按钮元素
var reset_query=$(":reset");
8.查找所有按钮元素
var button_query=$(":button");
9.查找所有文件域元素
var file_query=$(":file");
9.表单过滤器 Form Filters
1.查找所有可用的input元素
var input_query=$("input:enabled");
2.查找所有不可用的input元素
var input_query=$("input:disabled");
3.查找所有选中的单选复选框
var input_query=$("input:checked");
4.查找所有选中的下拉框
var option_query=$("option:selected");
参考
Web前端学习笔记之jQuery选择器的更多相关文章
- Web前端学习笔记之jQuery基础
0x0 jQuery介绍 jQuery是一个轻量级的.兼容多浏览器的JavaScript库. jQuery使用户能够更方便地处理HTML Document.Events.实现动画效果.方便地进行Aja ...
- 【前端】Web前端学习笔记【1】
... [2015.12.02-2016.02.22]期间的学习笔记. 相关博客: Web前端学习笔记[2] 1. JS中的: (1)continue 语句 (带有或不带标签引用)只能用在循环中. ( ...
- Web前端学习笔记(001)
....编号 ........类别 ............条目 ................明细....................时间 一.Web前端学习笔记 ...
- 【前端】Web前端学习笔记【2】
[2016.02.22至今]的学习笔记. 相关博客: Web前端学习笔记[1] 1. this在 JavaScript 中主要有以下五种使用场景 在全局函数调用中,this 绑定全局对象,浏览器环境全 ...
- web前端学习笔记
web前端学习笔记(CSS盒子的定位) 相对定位 使用相对定位的盒子的位置常以标准流的排版方式为基础,然后使盒子相对于它在原本的标准位置偏移指定的距离.相对定位的盒子仍在标准流中,它后面的盒子仍以标准 ...
- Web前端学习笔记之JavaScript、jQuery、AJAX、JSON的区别
官网的英文解释: javascript和jQuery有点关系,js是一种脚本语言,主要用于客户端,现在主要用于实现一些网页效果. jquery是js的一个库,你可以认为是对js的补充,提供了很多方便易 ...
- jQuery学习笔记(一)jQuery选择器
目录 jQuery选择器的优点 基本选择器 层次选择器 过滤选择器 表单选择器 第一次写博客,希望自己能够长期坚持,以写博客的方式作为总结与复习. 最近一段时间开始学习jQuery,通过写一个jQue ...
- web前端学习笔记:文本属性
今天的web前端笔记主要讲述文本属性,希望能帮助到正在学习web前端开发的初学者们,废话不多说了,一起来看看文本属性的相关内容吧. 文本属性 文本缩进 将Web页面上的一个段落第一行缩进,这是一种最常 ...
- 【前端学习】【jQuery选择器】
jQuery选择器 jQuery选择器 本文内容引自于单东林<锋利的jQuery>,未经原作者准许,禁止以商业目的转载发布! 选择器是jQuery的根基,在jQuery中,对事件处 ...
随机推荐
- 使用async/await——Nodejs+ExpressJs+Babel
在使用诸如restify/expressjs等Nodejs Web Framework时,我们最头疼的问题就是回调黑洞. 虽然后又Koa/Koa2号称“The Next Framework”使用co解 ...
- LeetCode-Combination Sum IV
Given an integer array with all positive numbers and no duplicates, find the number of possible comb ...
- js 中的变量声明提前总结
一.var 声明 ES6之前,js 中声明变量基本上用 var 关键字: 1.如果访问未声明的变量,会报错:ReferenceError 2.声明了未赋值,值为 undefined,跟前面的报错是两回 ...
- 基于k8s的promethus监控
没有监控 就没有眼睛. 除了k8s的基本监控外(pod运行状况.占用内存.cpu).为了对微服务项目中的(1)各种参数线程池.QPS.RT.业务指标(2)系统负载.thread.mem.class.t ...
- 常用 Git 操作
最新博客链接:https://feiffy.cc/Git 日常用到的GIT的一些操作,记下来,以备参考. 删除文件 git rm filename git commit -m "remove ...
- 微软构建高效DevOps团队培训总结
9.21和9.22这两天参加了微软DevOps的培训,主要是围绕TFS2015的不少新功能来讲的,相比较之前我们一直使用TFS2013来管理团队,确实强大了不少,也更加实用了. 首先,什么是DevOp ...
- Logstash之时区问题的建议和修改---filter---and duplicate resolution.
2. logstash es duplicate https://logstash.jira.com/browse/LOGSTASH-1875 https://logstash.jira.com/br ...
- 前端开发 - JQuery - 上
一.js的缺点 <!DOCTYPE html> <html lang="en"> <head> <meta charset="U ...
- Spring源码解析(一)开篇
前言 Spring源码继承结构比较复杂,看过以后经常会忘记.因此,记录一下源码分析的过程,方便以后回顾.本次分析的Spring源码版本为3.2.15. 另外,一提Spring就是IOC.DI等等,我们 ...
- gui设计
芯艺,你好! ... ... ... 芯艺,再见! http://www.chipart.cn/ 附件 http://files.cnblogs.com/files/dong1/%E8%89%BA%E ...