参见API调用
$.getScript()
jQuery提供了$.getScript()方法来直接加载.js文件,与加载一个HTML片段一样简单方便,并且不需要对JavaScript文件进行处理,JavaScript文件会自动执行。
使用方法
$.getJSON()
$.getJSON()方法用于加载JSON文件,与$.getScript()方法的用法相同。
使用方法1 、 使用方法2
$.ajax()
$.ajax()方法是jQuery最底层的Ajax实现。
使用方法
$.get()
$.get是以GET方式实现AJAX请求
使用方法
$.post()
$.get是以POST方式实现AJAX请求
使用方法
序列化
1.serialize()
serialize()方法也是作用于一个jQuery对象,它能够将DOM元素内容序列化为字符串,一般用于获取form表单值。
2.serializeArray()
在jQuery中还有一个与serialize()类似的方法——serializeArray(),该方法不是返回字符串,而是将DOM元素序列化后,返回JSON格式的数据。
3.$.param()
它是serialize()方法的核心,用来对一个数组或对象按照key/value进行序列化。
var obj = {a:1,b:2,c:3};var k = $.param(obj);alert(k); //输出a=1&b=2&c=3
疑难问题
Q1:Jquery自执行函数与普通自执行函数的区别
JS自执行函数:
(function(){//这里为调用的其它代码})();
Jquery立即执行函数:
$(function(){//这里为要调用的其它代码})
区别:第一个为顺序执行,即如果要调用其它的js方法,则需要置于代码末尾。否则无法调用。
第二个可以为全部代码加载后再执行,因此,如果第一个放在代码末尾,两者功能一样。
Q2:$ (function() {})与window.onload事件区别
转载:https://blog.csdn.net/linggty/article/details/79912601
JQuery 的代码我们通常会包裹在一个$(function(){})函数中,jq 的$(function(){})也就是$(document).ready(function(){})的简写,与之对应的原生 js 的window.onload事件,这俩者之间到底有什么区别呢?
$(function () {console.log("ready执行");});$(function() {console.log("ready1执行");});window.onload = function () {console.log('load执行');};window.onload = function () {console.log('load1执行');}// ready执行// ready1执行// load1执行1
这里可以看出两点不同:
1.$(function(){})不会被覆盖,而window.onload会被覆盖,个人感觉$(function(){})不会被覆盖的原因是将其放入到了一个队列中,在对应时机一次出队。
2. $(function(){})在window.onload执行前执行的,$(function(){})类似于原生 js 中的DOMContentLoaded事件,在 DOM 加载完毕后,页面全部内容(如图片等)完全加载完毕前被执行。而window.onload会在页面资源全部加载完毕后才会执行。
DOM 文档加载步骤:
- 解析 HTML 结构
- 加载外部的脚本和样式文件
- 解析并执行脚本代码
- 执行 $(function(){}) 内对应代码
- 加载图片等二进制资源
- 页面加载完毕,执行 window.onload
Q3:使用jquery的getJSON()遇到的跨域访问问题
这种写法有跨域限制,解决跨域请参照:跨域资源共享 CORS 详解
$.getJSON("******", function (data) {alert("go");document.getElementById("mydiv").innerHTML = "hahahah";});
其实jQuery已经封装了JSONP的使用,支持跨域
$.getJSON( "****?jsoncallback=?", function( data ){// 处理跨域请求得到的数据});
Q4:jquery 发送put/delete请求
$.ajax 是通过type 属性配置请求方式(GET、POST、PUT、DELETE等),默认是GET方式。
| 名称 | 请求方式 | 描述 |
|---|---|---|
| 浏览器 | GET、POST | form表单走浏览器默认提交行为 |
| $.ajax | GET、POST、PUT、DELETE等 | 走http请求方式 |
