jQuery知识点总结

一、jQuery介绍

1.jQuery引入

1.把外部的jQuery文件复制到当前项目中

2.在html项目中使用script标签引入外部的jQuery

二、jQery选择器

1.基本选择器

选择器名称语法解释
标签选择器(元素选择器)$("标签名称")获得所有匹配标签名称的元素
id选择器$("#id的属性值")获得与指定id属性值匹配的元素
类选择器$(".class的属性值")获得与指定的class属性值匹配的元素
例:点击按钮改变背景颜色:给jQery添加一个点击事件
​
1.获取元素选择器   
​
var $div = $("$div")
​
2.给按钮添加鼠标点击事件,jQery中都封装了函数,事件名称都去掉了on,
​
鼠标点击事件:
​
click(function(){
    事件的响应函数
}
​
$div.click(function(){
​
//在事件中改变背景色
​
//在jQery当中,把获取样式和设置样式都封装为了函数
//获取样式:jQery对象.css("样式名称");
//设置样式: jQery对象.css("样式名称","样式的属性值");
​
$("#one").css("bachground-color","red");
})

2.层级选择器

语法:

描述语法解释
获取A内部所有的B元素$("A B")后代选择器(包含子孙)
获取A元素下面所有的B子元素$("A >B")只有儿子,没有孙子
获取A元素同级下一个B元素$("A +B")下一个兄弟
获取A元素同级后面所有的B元素$("A ~B")后面的所有兄弟
获取A元素的同级B元素$("A").siblings("B")获取所有兄弟

3.属性选择器

语法:

描述语法
获取有属性的元素$("A[属性名]")
获取属性名等于值元素$("A[属性名='值']")
复合属性选择器,多个属性同事过滤$("A[属性名!='值']...[属性名!='值']")
获取属性名不等于值元素$("A[属性名!='值']")
获取属性名以值开头的元素$("A[属性名^='值']")
获取属性名以值结尾的元素$("A[属性名$='值']")
获取属性名含有值的元素$("A[属性名*='值']")

4.基本过滤选择器

描述语法
获取选择的元素中的第一个元素:first
获取选择的元素中的最后一个元素:last
不包括指定内容的元素(取反):not(selecter)
偶数,从0开始计数:even
奇数,从0开始计数:odd
指定索引(index)元素:eq(index)
大于指定索引元素:gt(index)
小于指定索引元素:lt(index)
获得标题,固定写法(<h1>/<h2>...):header

三、基本操作

1.操作内容

jquery原生js语法描述
html()innerHTML$(("选择器").html())获取内容
text()innerText$(("选择器").text())获取文本
val()value$(("标签/").html())获取标签的值
$("标签).eq(索引值).val("要替换的内容")修改标签中的值

 2.操作属性

attr():操作自定义属性
    设置标签状态的语法:
     例:<button id="mybut"></button>
     $("#mybut").attr("disabled",true)
prop():操作原生属性

两者的区别: 

attr()和prop()是在jQuery中用于操作元素属性(attribute)和属性值(property)的方法。它们之间的区别如下:

attr()方法:

attr()方法用于获取或设置元素的HTML属性,例如src、href、class等。
它适用于处理HTML属性,无论是标准属性还是自定义属性。
如果要获取属性的值,可以使用attr()方法而不需要传递第二个参数。
如果要设置属性的值,需要传递两个参数,第一个参数是属性名,第二个参数是属性值。
使用attr()方法设置属性时,会直接修改DOM元素的HTML属性,并不会更新元素的当前状态。

示例:

javascript
// 获取属性值
var src = $("img").attr("src");

// 设置属性值
$("img").attr("src", "new-image.jpg");
prop()方法:

prop()方法用于获取或设置元素的属性值,例如checked、disabled、value等。
它适用于处理元素的属性,如布尔属性(boolean attributes),例如checked、disabled等。
如果要获取属性的状态(如是否被选中、是否禁用等),可以使用prop()方法而不需要传递第二个参数。
如果要设置属性的状态,可以传递两个参数,第一个参数是属性名,第二个参数是布尔值。
使用prop()方法设置属性时,会同时更新DOM元素的属性和当前状态。
示例:

javascript
// 获取属性状态
var checkedStatus = $("input[type='checkbox']").prop("checked");

// 设置属性状态
$("input[type='checkbox']").prop("checked", true);
需要注意的是,attr()和prop()的使用方法可能会根据具体情况而有所不同。在处理标准属性时,attr()和prop()通常可以互换使用,但在处理布尔属性时,更推荐使用prop()方法,因为它更符合逻辑。此外,一些特殊属性可能只能使用其中一种方法才能正常工作,所以需要根据具体要操作的属性来选择使用适当的方法。

代码:
<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<script type="text/javascript" src="../jquery-3.7.1.js"></script>
	<style>
		
		
	</style>
	<body>
		
		<div id="box"  index="1">1111111</div>
		<button id="mybut">点击</button>
	</body>
	<script>
		
		// 将按钮的状态更改
		$("#mybut").attr("disabled",true)
		// $("#mybut").attr("disabled",false)
		
		/*
		attr():操作自定义属性
		prop():操作原生属性
		
		*/
	   
	   //原生attr()
	   
	   // console.log($("#box").attr("id"));  //获取原生
	   // console.log($("#box").attr("id","box2"));  //设置原生
	   
	   //自定义
	   
	   // console.log($("#box").attr("index"));  //获取自定义
	   // console.log($("#box").attr("index","2"));  //设置自定义
	   
	   // 移除自定义
	   // console.log($("#box").removeAttr("index"));  //移除自定义
	   //移除原生
	   // console.log($("#box").removeAttr("id"));   //移除原生
	
	
	   // //原生prop()
	   
	   // console.log($("#box").prop("id"));  //获取原生
	   // console.log($("#box").prop("id","box2"));  //设置原生
	   
	   // //自定义(不可)  
	   
	   // console.log($("#box").prop("index"));  //获取自定义    undefind
	   // console.log($("#box").prop("index","2"));  //设置自定义   会加到原生dom节点的属性上,没有加到标签的节点上
	   
	   
	   // console.log($("#box").prop("index"));  //获取自定义 
	   
	   // 移除自定义(不可)
	   // console.log($("#box").removeProp("index"));  //移除自定义
	   
	   // console.log($("#box").prop("index"));  //获取自定义 
	   
	   //移除原生
	    // console.log($("#box").removeProp("id"));   //移除原生
	   
	   
		
	</script>
</html>
 prop设置自定义:

 3.操作偏移量

js中:
 offsetLeft `和` offset Top`是用来获取元素相对于其父元素的左偏移量和上偏移量的属性。
 offsetLeft:表示元素的左边框相对于其父元素的左边框的距离
 offsetTOP:表示元素的上边框相对于其父元素的上边框的距离

jQuery:
 offset(): 距离文档流左上角的left,top,如果传参数,就是设置
 position(): 有定位的元素的left,top(不支持设置)

代码: 
<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<script type="text/javascript" src="../jquery-3.7.1.js"></script>
	<style>
		*{
			margin: 0;
		    padding:0;
		}
		
		#box{
			width: 100px;
			height: 100px;
			margin: 50px;
			background-color: aquamarine;
			position: relative;
			
		}
		
		p{
			position: absolute;
			width: 50px;
			height: 50px;
			background-color: red;
			left: 30px;
			top: 10px;
		}
	</style>
	<body>
		<div id="box">
			<p>1111</p>
			</div>
	</body>
	<script>
		/*
		 offsetLeft:
		 offsetTOP:
		      
	    jQuery:
		
		  offset(): 距离文档流左上角的left,top,如果传参数,就是设置
		  position(): 有定位的元素的left,top(不支持设置)
		*/
	   
	//    console.log($("#box").offset());   //获取值
	//    //修改值
	//    $("#box").offset({
	// 	   left:100,
	// 	   top:100
	//    })
	//    console.log($("#box").offset());   //获取值
	// console.log($("p").offset());
	
	// $("p").offset({
	// 		   left:100,
	// 		   top:100
	// })
	// console.log($("p").offset());
	
	
	console.log($("p").position());
	// 不支持设置
	$("p").position({
			   left:100,
			   top:100
	})
	console.log($("p").position());
	 </script>
</html>

 4.获取元素的尺寸

语法(宽高)描述补充
width() 、 height()内容的宽高样式设为display:none也可以获取到宽高
innerWidth()、innerHeight()内容的宽高+padding
outerWidth() 、outerHeight()内容的宽高+padding+border
outerWidth(true) 、outerHeight(true)内容的宽高+padding+border+margin方法里面传参数表示计算margin值
 代码:
<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<script type="text/javascript" src="../jquery-3.7.1.js"></script>
	<style>
		*{
			margin: 0;
			padding: 0;
		}
		
		#box{
			width: 100px;
			height: 100px;
			background-color: aquamarine;
			padding: 10px;
			border: 2px solid red;
			margin: 100px;
			/* display: none; */
		}
		
	</style>
	<body>
		
		<div id="box"></div>
	</body>
	<script>
		// 内容的宽高      width()      height()     样式设为display:none也可以获取到宽高
		// console.log($("#box").width(),$("#box").height());
		// 内容的宽高+padding        innerWidth()      innerHeight()
		console.log($("#box").innerWidth(),$("#box").innerHeight());
		
		// 内容的宽高+padding+border        outerWidth()      outerHeight()
		console.log($("#box").outerWidth(),$("#box").outerHeight());
		
		// 内容的宽高+padding+border+margin       outerWidth(true)      outerHeight(true)   方法里面传参数表示计算margin值
		console.log($("#box").outerWidth(true),$("#box").outerHeight(true));
	</script>
</html>

5.事件

 事件:
          
           绑定:jquery默认隐式迭代
           
           on:每次都触发   (封装了事件的方法)   可传参   事件委托
           one:只能触发一次
           
           绑定多个事件:
           例:$("ul li").on("click",A).on("click",B)
           
          jquery中可以(链式调用) 但是不可委托(可传参)
          
           解绑:
           off() 可进行解绑
           
           off():解绑所有事件
           off("click"):解绑click事件
           
           解绑多个事件:off("事件",事件名称):解绑某个click事件

代码:
<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<script type="text/javascript" src="../jquery-3.7.1.js"></script>
		<style>
			/* #box{
				
			} */
		</style>
	</head>
	<body>
		
		<!-- <button id="box">点击</button> -->
		
		<ul>
			<li>
				我是第一个
				<button>delete</button>
				</li>
			<li>
				我是第二个
				<button>delete</button>
				</li>
			<li>
				我是第三个
				<button>delete</button>
				</li>
			<li>我是第四个</li>
			<li>我是第五个</li>
		</ul>
		
	</body>
	<script>
		/*
		  事件:
		  
		   绑定:jquery默认隐式迭代
		   
		   on:每次都触发   (封装了事件的方法)   可传参   事件委托
		   one:只能触发一次
		   
		   绑定多个事件:
		   例:$("ul li").on("click",A).on("click",B)
		   
		  jquery中可以(链式调用) 但是不可委托(可传参)
		  
		   解绑:
		   off() 可进行解绑
		   
		   off():解绑所有事件
		   off("click"):解绑click事件
		   
		   解绑多个事件:off("事件",事件名称):解绑某个click事件
		
		*/
	   // 需要传两个参数  性能较差
	   // $("ul li").on("click",function(){
		  //  alert(111);
	   // })
	   
	   // 解绑========================================
	   
	   // $("ul li").off("click")
	   
	   // 利用事件委托
	   // $("ul").on("click","button",function(){
	   // 		   alert(111);
			 //    console.log(this.parentNode.remove());
	   // })
	   
	   // 传参数时,参数必须作为对象进行传递
	   // $("ul").on("click",{
		  //  name:"张三",
		  //  age:18,
		  //  gender:"男"
	   // },function(e){
		   
		  //  console.log(e);
		  //  // console.log(this.parentNode.remove());
	   // })
	   
	   
	   // 事件传参+ 事件委托
	   
	   // $("ul").on("click","button","hello",function(e){
	   		   
	   // 		   console.log(e);
	   // 		   // console.log(this.parentNode.remove());
	   // })
	   
	   
	   
	   // one    只触发一次    click:每次都触发
	   
	   // $("ul").one("click","button",function(){
		   
		  //  console.log("只触发一次");
		   
	   // })
	   
	   
	   // jquery  (链式调用)  不可委托(可传参)
	   
	   // $("ul").click("hello",function(e){
		  //  console.log("我是点击",e);
	   // }).mouseover(function(){
		   
		  //  console.log("mouseover");
	   // })
	   
	   
	   // $("ul").change(function(){
	   // 		   console.log("我是change");
	   // })
	   
	   // $("ul").mouseup(function(){
	   // 		   console.log("我是鼠标抬起");
	   // })
	   
	   // $("ul").mousedown(function(){
	   // 		   console.log("我是鼠标按下");
	   // })
	   
	   
	   
	   // 先在全局定义两个函数
	   
	   
	   // function A(){
		  //  console.log("AAAAA");
	   // }

    //    function B(){
    //    		   console.log("BBBB");
    //    }
	   
	   
	   // $("ul li").on("click",A).on("click",B)
	   
	   // // 解绑一个函数
	   
	   // $("ul li").off("click",A)
	</script>
</html>

6.操作节点

1.创建节点

创建:
          
          (会往原来子元素的后面追加)
          
              方法一:append()
              方法二:appendTo()
              
           (会往原来子元素的前面追加)
              
              方法一:prepend()
              方法二:prependTo()
              
             (会往原来兄弟元素的前面追加) 
             
             方法一:before()
             方法二:insertBefore()
              
              (会往原来兄弟元素的后面追加)
              方法一:after()
              方法二:insertAfter()
 
创建+插入:append()  如果只创建不插入的话,只会创建在内存中,只有再插入才会插入到页面

代码:
<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<script type="text/javascript" src="../jquery-3.7.1.js"></script>
		<style>
			#box{
				width: 500px;
				height: 500px;
				background-color: aquamarine;
			}
		</style>
	</head>
	<body>
		<div id="box">
			111111
		</div>
	</body>
	<script>
		/*
		  节点:
		  // 创建:
		  
		  (会往原来子元素的后面追加)
		  
		      方法一:append()
			  方法二:appendTo()
			  
		   (会往原来子元素的前面追加)
		      
			  方法一:prepend()
			  方法二:prependTo()
			  
			 (会往原来兄弟元素的前面追加) 
			 
			 方法一:before()
			 方法二:insertBefore()
			  
			  (会往原来兄弟元素的后面追加)
			  方法一:after()
			  方法二:insertAfter()
		*/
	   // 创建+插入:append()  如果只创建不插入的话,只会创建在内存中,只有再插入才会插入到页面
	   
	   // 方法一:
	   
	   // var cdiv = $("<div>我是一个div</div>")
	   
	   // var cdiv = $("<div>").html("<b>我是一个b标签</b>").addClass("div").css("background","red")
	   
	   // $("#box").append(cdiv)
	   
	   
	   // 方法二:
	   
	   // $("<div>").html("<b>我是一个b标签</b>").addClass("div").css("background","red").appendTo($("#box"))
	   
	   
	   
	   // 元素前面追加
	   
	   // 方法一:prepend
	   
	   // var cdiv = $("<div>我是一个div</div>")
	   
	   // var cdiv = $("<div>").html("<b>我是一个b标签</b>").addClass("div").css("background","red")
	   
	   // $("#box").prepend(cdiv)
	   
	   
	   // 方法二:prependTo
	   
	   // $("<div>").html("<b>我是一个b标签</b>").addClass("div").css("background","red").prependTo($("#box"))
	   
	   // (会往原来兄弟元素的前面追加)
	    
	 
	   // 方法一:
	   // var cdiv = $("<div>我是一个div</div>")
	   
	   // $("#box").before(cdiv)
	   
	   // 方法二:
	   // var cdiv = $("<div>我是一个div</div>")
	   
	   // cdiv.insertBefore($("#box"))
	    // (会往原来兄弟元素的后面追加)
		
		// 方法一:
		// var cdiv = $("<div>我是一个div</div>")
		
		// $("#box").after(cdiv)
		
		// 方法二:
		// var cdiv = $("<div>我是一个div</div>")
		
		// cdiv.insertAfter($("#box"))
	</script>
</html>
 2.替换节点

替换:replaceWith() 支持多个替换

replaceWith()

replaceAll()

代码: 
<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<script type="text/javascript" src="../jquery-3.7.1.js"></script>
		<style>
			#box{
			
				background-color: aquamarine;
			}
		</style>
	</head>
	<body>
		<div id="box">
			<p>11111111</p>
			<span>22222222</span>
			<div>3333333</div>
			<div>3333333</div><div>3333333</div><div>3333333</div><div>3333333</div><div>3333333</div>
		</div>
	</body>
	<script>
		/*
		  
		  节点:
		  // 替换:replaceWith() 支持多个替换
		
		*/

// replaceWith() 支持多个替换
		// var cdiv = $("<div>我是一个div</div>")
		
		// $("#box div").replaceWith(cdiv)
		
		// replaceAll()  支持多个替换
		var cdiv = $("<div>我是一个div</div>")
		
		cdiv.replaceAll($("#box div"))
	</script>
</html>
 3.克隆节点

 克隆:
clone().insertAfter()  克隆到.....之后 
clone()可接收参数   控制是不是克隆事件
       
第一个参数写为true  相当于把元素的点击事件也克隆
第二个参数写为false  相当于把元素的点击事件也克隆,但子元素点击事件不生效
 两个参数写为false  相当于把元素的点击事件也克隆,但该元素点击事件都不会生效
第一个参数写为true 第二个参数写为true  无意义

 代码:
<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<script type="text/javascript" src="../jquery-3.7.1.js"></script>
		<style>
			#box{
				background-color: aquamarine;
			}
			#center{
				background-color: red;
			}
		</style>
	</head>
	<body>
		<div id="box">
			<ul>
				<li>111</li>
				<li>222</li>
				<li>333</li>
			</ul>
			
		</div>
		
		<div id="center">
			<ul>
				<li>111</li>
				<li>222</li>
				<li>333</li>
			</ul>
			
		</div>
	</body>
	<script>
		/*
		  节点:

		  // 克隆:
		
		*/
	   
	   // clone().insertAfter()  克隆到.....之后 
	   // clone()可接收参数   控制是不是克隆事件
	   
	   // 第一个参数写为true  相当于把元素的点击事件也克隆
	   // 第二个参数写为false  相当于把元素的点击事件也克隆,但子元素点击事件不生效
	    // 两个参数写为false  相当于把元素的点击事件也克隆,但该元素点击事件都不会生效
		// 第一个参数写为true 第二个参数写为true  无意义
		
	   // $("#box").on("click",function(){
	   // 		  //  alert(111);
			 //  console.log("box click");
	   // })
	   
	   // $("#box").clone(true).prop("id","box2").insertAfter($("#center"))
	   
	   
	   // $("#box ul li").on("click",function(){
	   // 		  //  alert(111);
	   // 			  console.log("ul click");
	   // })
	   
	   // $("#box").clone(true,false).prop("id","box2").insertAfter($("#center"))
	   
	   // $("#box ul li").on("click",function(){
	   // 		  //  alert(111);
	   // 			  console.log("ul click");
	   // })
	   
	   // $("#box").clone(false,false).prop("id","box2").insertAfter($("#center"))
	   

	</script>
</html>
4.删除节点

删除:
删除自己:remove()
清空内部:empty()

代码:
<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<script type="text/javascript" src="../jquery-3.7.1.js"></script>
		<style>
			#box{
				background-color: aquamarine;
			}
		</style>
	</head>
	<body>
		<div id="box">
			<div>11111</div>
			<div>22222</div>
			<div>33333</div>
			<div>44444</div>
			<div>55555</div>
		</div>
	</body>
	<script>
		/*
		  
		  节点:
		  
		 删除:
		 删除自己:remove()
		 清空内部:empty()

		*/
		
		// 删除
		// $("#box div").eq(0).remove()
		$("#box").empty()
	</script> 
</html>

 四、ajax请求

json-server在黑窗口下载并如何在HBuild x 中使用流程:

json-server在黑窗口下载并如何在HBuild x 中使用流程

要在HBuilder X中使用json-server,你需要按照以下步骤进行操作:

  1. 下载Node.js:首先,确保你的计算机已安装Node.js。你可以在Node.js官网(https://nodejs.org)上下载适合你操作系统的最新版本。

  2. 安装json-server:打开命令行终端(黑窗口),运行以下命令来全局安装json-server:

 
 

npm install -g json-server

这会将json-server安装到全局环境中,允许你在任何地方使用该命令。

  1. 创建JSON数据文件:在你的项目目录中,创建一个名为db.json(或其他名称)的文件,并在其中编写你的JSON数据。示例:

json

{ "users": [ { "id": 1, "name": "Alice" }, { "id": 2, "name": "Bob" } ], "posts": [ { "id": 1, "title": "Post 1", "author": 1 }, { "id": 2, "title": "Post 2", "author": 2 } ] }

这是一个简单的帖子和用户数据的示例。

  1. 启动json-server:在命令行终端中,进入你的项目目录,并运行以下命令启动json-server:

json-server --watch db.json

这会启动json-server,并监视db.json文件中的数据变化。

  1. 访问API接口:json-server会在默认情况下运行在http://localhost:3000,你可以通过打开浏览器并访问http://localhost:3000来访问你的JSON数据。例如,你可以访问http://localhost:3000/users来获取所有用户的列表。

在HBuilder X中使用json-server时,你可以通过Ajax或其他HTTP请求的方式来访问json-server提供的API接口,获取和操作数据。

这是json-server在HBuilder X中的基本使用流程。你可以根据自己的需求和项目来配置和扩展json-server。更多关于json-server的详细信息和用法,请参考json-server的官方文档(https://github.com/typicode/json-server)。

代码:
<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<script type="text/javascript" src="../jquery-3.7.1.js"></script>
	<style>
		
	</style>
	<body>
		<button id="myget">get</button>
		<button id="mypost">post</button>
		<button id="mypatch">patch</button>
		<button id="myput">put</button>
		<button id="mydelete">delete</button>
		
		
	</body>
	<script>
		/*
		 ajax请求:
		 $.get()
		 $.post()    
		*/
	   
	   // get  请求
	   
	   // $("#myget").click(function(){
		  //  $.ajax({
			 //   url:"http://localhost:3000/users",
		  //  // async:true     是否异步
		  //  data:{
			 //   id:1
		  //  },
		  //  method:"get",
		  //  success:function(res){
			 //   console.log(res);
		  //  },
		  //  error:function(){
			   
		  //  },
		  //  timout:500   //超过请求时间就会报错  
		  //  // headers:{
			   
		  //  // }  请求头
		  //  // dataType:     返回的数据类型  如果是字符串自动不解析为json 
		  //                           //     如果是json字符串则会自动解析为json对象
		  //  })
		   
	   // })
	   
	   
	   // post请求
	   
	   // $("#mypost").click(function(){
	   // 		   $.ajax({
	   // 			   url:"http://localhost:3000/posts",
	   // 		   // async:true     是否异步
	   // 		   data:{
				//    "title":"Post 4",
				//    "author": 4
	   // 		   },
	   // 		   method:"post",
	   // 		   success:function(res){
	   // 			   console.log(res);
	   // 		   },
	   // 		   error:function(){
	   			   
	   // 		   },
	   // 		   timout:1000   //超过请求时间就会报错  
	   // 		   // headers:{
	   			   
	   // 		   // }  请求头
	   // 		   // dataType:     返回的数据类型  如果是字符串自动不解析为json 
	   // 		                            //     如果是json字符串则会自动解析为json对象
	   // 		   })
	   		   
	   // })
	   
	   
	   // put请求    更新       指定好要更新那个数据的id
	   
	   
	   // $("#myput").click(function(){
	   // 		   $.ajax({
	   // 			   url:"http://localhost:3000/put/1",
	   // 		   // async:true     是否异步
	   // 		   data:{
	   // 				   "title":"Post 4",
	   // 				   "author": 4
	   // 		   },
	   // 		   method:"put",
	   // 		   success:function(res){
	   // 			   console.log(res);
	   // 		   },
	   // 		   error:function(){
	   			   
	   // 		   },
			   
	   // 		   //timout:1000   //超过请求时间就会报错  
	   // 		   // headers: {
	   // 		   //   'Content-Type': 'application/json'
	   // 		   // }  // 请求头
	   // 		   // dataType:     返回的数据类型  如果是字符串自动不解析为json 
	   // 		                            //     如果是json字符串则会自动解析为json对象
	   // 		   })
	   		   
	   // })
	   
	   
	   // // patch请求   可自己进行插值更新
	   
	   // $("#mypatch").click(function(){
	   // 		   $.ajax({
	   // 			   url:"http://localhost:3000/patch/1",
	   // 		   // async:true     是否异步
	   // 		   data:{
	   // 				   "title":"Patch"
	   // 		   },
	   // 		   method:"patch",
	   // 		   success:function(res){
	   // 			   console.log(res);
	   // 		   },
	   // 		   error:function(){
	   			   
	   // 		   },
	   			   
	   // 		   //timout:1000   //超过请求时间就会报错  
	   // 		   // headers: {
	   // 		   //   'Content-Type': 'application/json'
	   // 		   // }  // 请求头
	   // 		   // dataType:     返回的数据类型  如果是字符串自动不解析为json 
	   // 		                            //     如果是json字符串则会自动解析为json对象
	   // 		   })
	   		   
	   // })
	   
	   
	   // delete请求 
	   
	   // $("#mydelete").click(function(){
	   // 		   $.ajax({
	   // 			   url:"http://localhost:3000/patch/1",
	   // 		   // async:true     是否异步
	   // 		   // data:{
	   // 				 //   "title":"Patch"
	   // 		   // },
	   // 		   method:"delete",
	   // 		   success:function(res){
	   // 			   console.log(res);
	   // 		   },
	   // 		   error:function(){
	   			   
	   // 		   },
	   			   
	   // 		   //timout:1000   //超过请求时间就会报错  
	   // 		   // headers: {
	   // 		   //   'Content-Type': 'application/json'
	   // 		   // }  // 请求头
	   // 		   // dataType:     返回的数据类型  如果是字符串自动不解析为json 
	   // 		                            //     如果是json字符串则会自动解析为json对象
	   // 		   })
	   		   
	   // })
	   
	   
	   
	   
	   
	   // promise==============================================
	   
	   // get  请求
	   
	   // $("#myget").click(function(){
	   // 		   $.ajax({
	   // 			   url:"http://localhost:3000/users",
	   // 		   // async:true     是否异步
	   // 		   data:{
	   // 			   id:1
	   // 		   },
	   // 		   // method:"get",
	   // 		   // headers:{
	   			   
	   // 		   // }  请求头
	   // 		   }).then(res=>{
				//    console.log(res);
			 //   }).catch(err=>{
				//    console.log(err);
			 //   })
	   		   
	   // })
	   
	   
	   
	   //  使用async   await  同步代码执行异步操作
	   
	   // get  请求
	   
	   // $("#myget").click(async function(){
	   // 		var res= await $.ajax({
	   // 			   url:"http://localhost:3000/users",
	   // 		   // async:true     是否异步
	   // 		   data:{
	   // 			   id:1
	   // 		   },
	   // 		    method:"get",
	   // 		   // headers:{
	   			   
	   // 		   // }  请求头
	   // 		   })
			   
			 //   console.log(res);
	   		   
	   // })
	   
	   
	   // 调用get()和post()
	   
	   // $.get("http://localhost:3000/users",{
		  //  id:1
	   // },function(res){
		  //  console.log(res);
	   // })
	   
	   // promise
	   
	   // $.get("http://localhost:3000/users",{
	   // 		   id:1
	   // }).then(res=>{
	   // 		   console.log(res);
	   // })
	   
	   
	   
	   // post请求   $.post()
	   
	 //   $("#mypost").click(async function(){
	 //   		var res = await $.post("http://localhost:3000/posts",{
		// "title":"Post 3",
		//    "author": 4		
		// 	})
			
		// 	console.log(res);
	   		   
	 //   })
	   
	
	   
	</script>
</html>
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值