查询元素的属性
1. val
操作数组中DOM对象的value属性。
- $(选择器).val():无参数形式调用,读取数组中第一个DOM对象的value属性值。
- $(选择器).val(值):有参形式调用,对数组中所有DOM对象的value属性值进行统一赋值。
注意:在数组中有多个对象时,有参形式调用和无参形式调用的对象是不同的。
2. text
操作数组中所有DOM对象的文字显示内容属性。
- $(选择器).text():无参形式调用,读取数组中所有DOM对象的文字显示内容,将得到的内容拼接成一个字符串返回。
- $(选择器).text(值):有参形式调用,对数组中所有DOM对象的文字显示内容进行统一赋值。
3. attr
对val、text以外的属性进行操作。
- $(选择器).attr(“属性名”):获取jQuery数组第一个对象的属性值。
- $(选择器).attr(“属性名”,”值”):对数组中所有DOM对象的属性设置为新值。
举个例子
<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><script type="text/javascript" src="./js/jquery-3.6.0.min.js"></script><style>div{width: 200px;height: 30px;line-height: 30px;background: rgb(153, 153, 221);}</style><script>$(function(){$("#btn1").click(function(){var $obj = $(":text");//val()获取的是DOM数组第一个对象的value属性值alert($obj.val());})$("#btn2").click(function(){var $obj = $(":text");//设置所有的text的value为新值$obj.val("曹操");});$("#btn3").click(function(){var $obj = $("div");//获取div,text()无参数获取DOM数组中所有对象的文本值,连接成字符串alert($obj.text());});$("#btn4").click(function(){var $obj = $("div");//获取div的第一个文本值alert($($obj[0]).text());});$("#btn5").click(function(){var $obj = $("div");//设置div的新文本值$obj.text("我们都是新的div");});$("#btn6").click(function(){var $obj = $("#img1");//设置图片的src属性为其他值,如果仅获取值就不需要赋值了$obj.attr("src","../images/03.jpg");});});</script></head><body><p>文本框val</p><input type="text" value="刘备"/> <br/><input type="text" value="关羽"/> <br/><input type="text" value="张飞"/> <br/><p>文本数据text</p><div>我是第一个div\n</div><div>我是第二个div</div><div>我是第三个div</div><p>图片</p><img src="../images/04.jpg" id="img1" width="200px" height="200px"/> <br/><p>功能按钮</p><button id="btn1">获取第一个文本框的值</button> <br/><button id="btn2">设置所有文本框为新值</button> <br/><button id="btn3">获取div的所有文本</button> <br/><button id="btn4">获取第一个div的文本</button> <br/><button id="btn5">设置div新文本</button> <br/><button id="btn6">设置img图片</button> <br/></body></html>
元素节点的操作
1. remove
- $(选择器).remove():将数组中的所有DOM对象及其子对象一并删除。
2. empty
- $(选择器).empty():将数组中所有DOM对象的子对象删除。
- 注意remove和empty删除的对象是不同的。
3. append
- 为数组中的所有DOM对象添加子对象。
- 语法:
$(选择器).append("<div>添加子对象</div>")
4. html
- 设置或返回被选元素的内容,相当于DOM对象中的”innerHTML”。
- $(选择器).html():无参形式调用,获取DOM数组第一个匹配元素的内容。
- $(选择器).html(值):有参形式调用,用于设置DOM数组中所有元素的内容。
- html()和text()的区别和innerHTML和innerText的区别是一样的。
5. each
- $.each是对数组,json和DOM数组等的遍历,对每一个元素调用一次处理函数。
- $就相当于java中的类名,.each就是类中的静态方法。
- 语法:
1. `$.each(遍历对象,function(index,element) {处理程序} )`1. `jQuery对象.each(function(index,element) {处理程序} )`1. index和element都是自定义的形参,名称自定义。1. index为数组的下标,element为数组的对象。
举个例子
1—4方法的使用(each使用方法在下方)
<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><script type="text/javascript" src="./js/jquery-3.6.0.min.js"></script><script>$(function(){$("#btn1").click(function(){//删除select对象本身和其子对象$("select").remove();});$("#btn2").click(function(){//只删除select对象的子对象$("select").empty();});$("#btn3").click(function(){//给div标签添加子元素$("#father").append("<select><option>示例</option></select>");});$("#btn4").click(function(){//获取数组第一个DOM对象的文本值,下面是text和html的区别//alert($($("span")[0]).text()); 我是MySQL数据库alert($("span").html()); //我是MySQL<b>数据库</b>});$("#btn5").click(function(){$("span").html("这是新的span标签");});});</script></head><body><select><option value="脑斧">脑斧</option><option value="狮子">狮子</option><option value="豹子">豹子</option></select><br/><select><option value="非洲">非洲</option><option value="美洲">美洲</option><option value="亚洲">亚洲</option></select><br/><div id="father" style="background:red;">我是父div</div><br/><span>我是MySQL<b>数据库</b></span><span>我是jdbc</span><br/><br/><button id="btn1">使用remove删除所有对象</button><button id="btn2">使用empty删除子DOM对象</button><button id="btn3">增加一个子DOM对象</button><button id="btn4">获取文本中带有html标签的内容</button><button id="btn5">设置span的值</button></body></html>
each语法举例
...<script>$(function(){//语法1//循环遍历数组$("#btn6").click(function(){var arr = ["a","b","c"];/* js中循环数组for (var index = 0; index<arr.length; index++){console.log("数组索引:" + index + " -- 数组元素:" + arr[index]);}*///$.each循环数组$.each(arr,function(index,element){console.log("数组索引:" + index + " -- 数组元素:" + element);});});//循环遍历JSON$("#btn7").click(function(){var json_obj = '{"name":"张三","age":"18"}';json_obj = JSON.parse(json_obj);//这里的参数名称可以自定义$.each(json_obj,function(key,value){console.log("key=:" + key + " -- velue=" + value);});});//循环遍历DOM数组$("#btn8").click(function(){var $dom_obj = $(":text");$.each($dom_obj,function(index,element){console.log("DOM数组索引:" + index + " -- 文本框value值:" + $(element).val());});});//语法2//这个和btn8的效果是相同的,选择使用即可。$("#btn9").click(function(){var $dom_obj = $(":text");$dom_obj.each(function(index,element){console.log("DOM数组索引:" + index + " -- 文本框value值:" + $(element).val());});});});</script>...<body><input type="text" value="t1"/><input type="text" value="t2"/><input type="text" value="t3"/><button id="btn6">循环遍历数组</button><button id="btn7">循环遍历JSON</button><button id="btn8">循环遍历DOM数组</button><button id="btn9">语法2:循环遍历DOM数组</button></body>
