1、得到表单内表单元素的个数:(input、textarea、select、button)
$("#form1 :input").length;
2、得到表单内input元素:
$("#form1 input");
3、选择器中含有"."、"#"、"("、"]"等特殊字符
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title> new document </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 type="text/javascript">
$(function(){
var $id_a = $('#id.a');//jQuery对象
var $id_b = $('#id#b');//jQuery对象
var $id_c = $('#id[1]'); //jQuery对象
alert( $id_a.html() );//这样会获取不到,输出null
alert( $id_b.html() );//这样会获取不到,输出null
alert( $id_c.html() );//这样会获取不到,输出null
var $id_right_a = $('#id//.a');//jQuery对象,对特殊字符,我们转义一下
var $id_right_b = $('#id//#b');//jQuery对象,对特殊字符,我们转义一下
var $id_right_c = $('#id//[1//]'); //对特殊字符,我们转义一下
alert( $id_right_a.html() );//正确输出"aa"
alert( $id_right_b.html() );//正确输出"bb"
alert( $id_right_c.html() );//正确输出"cc"
})
</script>
</head>
<body>
<div id="id.a">aa</div>
<div id="id#b">bb</div>
<div id="id[1]">cc</div>
</body>
</html>
4、属性选择器中的引号问题
1.3.1放弃了1.1.1遗留下来的@符号,如果你使用1.3.1以上的版本,那么你不能在属性前添加@符号,比如:
$(' div[@title="test"] ');
正确的写法是去掉@符号,比如:
$(' div[title="test"] ');
5、选择器中含有空格的注意事项:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title> new document </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 type="text/javascript">
$(function(){
//注意区分类似这样的选择器
//虽然一个空格,却截然不同的效果.
var $t_a = $('.test :hidden');
var $t_b = $('.test:hidden');
var len_a = $t_a.length;
var len_b = $t_b.length;
alert("$('.test :hidden') = "+len_a); //输出 4
alert("$('.test:hidden') = "+len_b); //输出 3
})
</script>
</head>
<body>
<div class="test">
<div style="display:none;">aa</div>
<div style="display:none;">bb</div>
<div style="display:none;">cc</div>
<div class="test" style="display:none;">dd</div>
</div>
<div class="test" style="display:none;">ee</div>
<div class="test" style="display:none;">ff</div>
</body>
</html>
之所以会出现不同的结果,是因为后代选择器与过滤选择器的不同。
var $t_a = $('.test :hidden');//带空格
以上代码是选取class为“test”的元素里面的隐藏元素。
var $t_b = $('.test:hidden');;//不带空格的
则是选取隐藏的class为“test”的元素