javaweb实训第二天上午——jQuery笔记(2)

简介: jQuery操作元素或节点的方法添加:append(),appendTo(),prepend(),after(),before()删除:remove(),empty()复制:clone(true)

javaweb实训第二天上午——jQuery笔记(1)https://developer.aliyun.com/article/1414829

  1. jQuery操作元素或节点的方法

添加:append(),appendTo(),prepend(),after(),before()

删除:remove(),empty()

复制:clone(true)

<input type="button" value="动态添加按钮" id="btn">
<div id="filediv">
<input type="button" code="button" value="按钮"><br/>
</div>
<script type="text/javascript">
$(function(){
/*Jquery对象.clone()  浅克隆仅仅克隆标签 Jquery对象.clone(true)  浅克隆标签及事件  */
$("#btn").on("click",function(){//拷贝按钮
$("input[code]:first").clone(true).appendTo($("#filediv"))
})
//为标签input[code]标签绑定事件
$("input[code]").on("click",function(){
alert(1);
})
});
</script>
  1. jQuery操作dom的属性和样式
  1. 操作属性:JQuery对象.attr(),removeAttr(),data()


jQuery中获取属性的值有2种方式:


1.一种是attr获取属性对应的值,获取到的值都是字符串


语法格式:  jQuery.attr("属性名")


2.一种是data获取属性对应的值,获取到的值,会转为对应的类型


语法格式:   jQuery.data("xxx")  使用data获取属性值     你的属性   data-xxx,你属性名必须是以data-开始的属性


比如:


我想获取data-username属性对应的值     jQuery对象.data("username")

<input type="text" id="username" data-age="22"  data-sex="true" 
data-email="12@qq.com"
data-person='{"name":"王天霸","age":33,"sex":"男"}'/>
<input type="button" id="addAttribute"  value="添加属性" /><br />
<input type="button" id="editAttribute"  value="修改属性" /><br />
<input type="button" id="removeAttribute"  value="删除属性" /><br />
<input type="text" id="username" /> 
<script type="text/javascript">
/** 在jQuery中添加属性,修改属性使用的函数,attr("属性名",属性值)//当没有这个属性名的时候,我就是添加属性,
 * 当我有这个属性名的时候,则是修改属性*/
$(function(){
//添加属性对应的按钮
$("#addAttribute").on("click",function(){
//添加属性
$("#username").attr("abc","def");
});
//修改属性对应的按钮
$("#editAttribute").on("click",function(){
$("#username").attr("abc","你被修改了");
});
//删除属性对应的按钮
$("#removeAttribute").on("click",function(){
//删除指定的属性
$("#username").removeAttr("abc");
});
});
</script>
  1. 操作样式:css(),addClass(),removeClass()

 

 

  1. jQuery遍历

场景:例如有多个input按钮,获取每个按钮的value值


新的一种方式:


//$obj:jquery集合对象,index遍历元素的下标(从0开始),obj表示每一个节点


$obj.each(function(index , obj){


alert(      $(obj).val()      );


});

<ul>

<li>李寻欢li>

<li>方世玉li>

<li>雷老虎li>

<li>大朗吃药了li>

ul>

$(function(){
/* 需求:打印li标签中所有的值 */
//获取到所有的li元素标签
var lis = $("ul li");
console.debug(lis);
/*jQuery循环迭代的语法格式:
$.each(数组/多个值,function(i,o){
i:循环次数的索引
o:列表中的具体元素
});
*/
$.each(lis,function(i,o){
console.debug(o.innerHTML);
})
});
  1. jQuery发异步请求

$.get("url",data,callback,type);


$.post("url",data,callback,type);


url:表示请求


data:请求参数,格式{key1:value1,key2:value2}


callback:回调函数function(data){},其他data表示服务器返回的数据


type:指定服务器返回数据的类型,如果是字符串,基本值用text,如果是对象,或者集合用json

  1. jQuery练习题
  1. 练习题1
$(function() {
//小题目1: 点击按钮获取被选中的input标签
$("#btn").click(function(){
var inputs = $("input[name=hobbies]:checked");
console.debug(inputs);
});
//小题目2:点击按钮隐藏p标签
$("p").click(function(){
var p = $(this);//点击那个p标签,this就代表那个p标签: 并转换成jQuery对象,方便我们调用jQuery中的方法
p.hide(1000);//调用函数隐藏,被点击的p标签
});
//小题目3:表格中的行,按照偶数行,和奇数行,分别给给字体,和行背景添加颜色
$("table tr:even").css({"color":"yellow","background":"blue"});
$("table tr:odd").css({"color":"green","background":"pink"});
});
  1. 练习题2
$(function(){
//一行代码
$("#btn1").click(function(){
//选中select1 下面的option标签,但凡是被选中的,追加到$("#select2")
$("#select1 option:selected").appendTo( $("#select2") )
});
$("#btn2").click(function(){
//选中select1 下面的所有option标签,追加到$("#select2")
$("#select1 option").appendTo( $("#select2") )
});
});
  1. 练习题3
<script type="text/javascript">
$(function(){
$("#checkAll").click(function(){//全选
$("input[name='hobbies']").prop("checked",true)
});
$("#checkNotAll").click(function(){//全不选
$("input[name='hobbies']").prop("checked",false)
});
$("#checkUnAll").click(function(){//反选
var inpus = $("input[name='hobbies']");
    $.each(inpus,function(i,o){
     if(o.checked==true){
     o.checked=false
     }else{
     o.checked=true;
     }
    });
});
});
function checkChange(src){//全选/全不选
var res = src.checked;
$("input[name='hobbies']").prop("checked",res)
}
</script>
  1. 练习题4
$(function() {
$("#btn1").click(function(){
$("#select").val("2号")//设置下拉框的值为2号,所以2号的option被选中
});
$("#btn2").click(function(){
$("#selectMultiple").val(["2号","5号"])
})
$("#btn3").click(function(){
$("input[name=checkbox]").val(["复选2","复选4"])
})
$("#btn4").click(function(){
//$("input[name=radio]").val(["单选2"]);//方式1:这里注意,即便是单选,也要用数组才行
$("input[value=单选2]").prop("checked",true);//方式2:prop 对于单选框,复选框等属性的操作
})
$("#btn5").click(function(){//打印所有被选中的
var ches = $(":checked")
$.each(ches,function(i,o){
console.debug(o)
})
})
});
</script>
  1. 练习题5
<script language="javascript">
$(function(){
//添加功能实现
$("#btn_submit").click(function(){
var username = $("#username").val()
var email = $("#email").val()
var tel = $("#tel").val()
$("#userTbody").append("<tr>"
+"<td>"+username+"</td>"
+"<td>"+email+"</td>"
+"<td>"+tel+"</td>"
+"<td><a href='javascript:void(0);' οnclick='remove(this)'>删除</a></td>"
+"</tr>")
})
$("#btn_removeAll").click(function(src){
$("#userTbody").empty();                                                                                                                   
})
});
//jquery删除函数:JQuery对象.remove()删除元素自己,  JQuery对象.empty()删除元素text
function remove(src){//src 是传入得的标签
//$(src).parent().parent().remove();//比较局限,如果a标签外部还有标签,就傻逼了
$(src).closest("tr").remove();//a标签往外找,直到找到tr为止
}
</script>

javaweb实训第二天上午——jQuery笔记(3)https://developer.aliyun.com/article/1414832?spm=a2c6h.13148508.setting.20.4d4d4f0erzCTC6

目录
相关文章
|
3月前
|
JavaScript
jQuery DOM2-第4次课-从某个元素出发,往上下左右找祖先、后代、兄弟然后对其进行增删改-附资料作业笔记
jQuery DOM2-第4次课-从某个元素出发,往上下左右找祖先、后代、兄弟然后对其进行增删改-附资料作业笔记
25 0
|
3月前
|
JSON JavaScript 前端开发
javaweb实训第二天上午——jQuery笔记(3)
JSON格式数据 JSON格式数据概述
34 0
|
3月前
|
JavaScript
|
4月前
|
JavaScript 前端开发 UED
前端知识笔记(四)———JQuery 自动刷新页面但不闪烁的实现方法
前端知识笔记(四)———JQuery 自动刷新页面但不闪烁的实现方法
50 0
|
6月前
|
JavaScript
JavaWeb JQuery操作结点
JavaWeb——JQuery内容补充 JQuery操作DOM。
23 0
|
6月前
|
JavaScript 前端开发 数据安全/隐私保护
JavaWeb 速通JQuery
JavaWeb——JQuery 内容分享。
32 0
|
7月前
|
设计模式 JavaScript 前端开发
【JavaWeb】 JavaScript 开发利器之 jQuery
封装和抽象:jQuery库封装了一系列常见的DOM操作、事件处理、Ajax请求等功能,以简化开发人员的工作。它对底层的JavaScript操作进行了封装和抽象,提供了更简洁、易用的接口。 选择器引擎:jQuery库通过自定义的选择器引擎,可以使用CSS选择器来选择HTML元素。这使得开发人员能够方便地操作DOM元素,而不需要繁琐地编写原生的JavaScript代码。 链式调用:jQuery库采用链式调用的设计模式,使得可以对选择的元素进行连续的操作。通过返回相同的jQuery对象,可以在同一行代码中依次调用多个方法,提高开发效率和代码可读性。
|
8月前
|
JavaScript 前端开发 数据安全/隐私保护
jQuery 选择器全部详细笔记
jQuery 选择器全部详细笔记
57 0
|
9月前
|
XML 存储 JSON
【全套jQuery】学了一下午,我敢说这一定是最好的笔记!
【全套jQuery】学了一下午,我敢说这一定是最好的笔记!
|
JavaScript 索引
JavaWeb--快速入门jQuery(三)
JavaWeb--快速入门jQuery(三)
122 0
JavaWeb--快速入门jQuery(三)