参考:http://www.css88.com/jqapi-1.9/jQuery.ajax/

http://www.cnblogs.com/haitao-fan/p/3908973.html

1、常用格式化

$.ajax({

url:url,

type:'POST',

method :'POST',//jq 1.9 添加属性 ,type 的别名,1.9之前用 type
async:true,//是否异步处理,同步会锁定浏览器
crossDomain:false,//是否跨域
dataType:"json",//数据类型
data:data,//发送的请求数据
beforeSend:function(){

  //发送前执行的操作,一般用于验证,返回false 时终止请求

},
success:function(data,status,xhr){

  //请求成功的事件

},
error:function(xhr){

  //请求失败的事件
  alert("错误提示: " + xhr.status + " " + xhr.statusText);
},
complete:function(jqXHR,textStatus){
  //不论成功与否都执行的回调方法

}

});

2、参数

dataType 数据类型

default: Intelligent Guess (xml, json, script, or html)

data  的参数类型以下几种

  • 文本类型
  • JSON字符串
  • JSON对象
  • JSON数组
  • FormData对象
  • 其他类型,比如html, 比如XML,只要设置要contentType即可,类似JSON类型

文本类型:
如:data = "uname=myname&mobileIpt=110" ;

JSON 字符串:(注意与json 对象区分)

如:data = "{uname:'myname',mobileIpt:'110','}";

JSON 对象:

如:data = {"uname":"myname","mobilelpt":"110"};

JSON 数组:

如:data = [

  {"name":"uname","value":"myname"},

  {"name":"mobileIpt","value":"110"},

];

var arr = $('#form').serializeArray() 序列化数组返回的是JSON 数组,可利用$.param(arr) 来解析json 数组,解析后为文本格式 "uname=myname&mobileIpt=110".

附:可通过  $('#form').serialize() 序列化方法 直接提取表单数据,生成文本格式 "uname=myname&mobileIpt=110"

在通过反序列化方法unserialize(文本格式) 的到一个json对象,这样就可以取出表单中的某些数据

FormatData对象:

FormatData对象可以更灵活方便的发送表单数据,因为可以独立于表单使用。

可通过Ajax上传文件。通过这种方式,可以非常方便的进行表单提交,直接表单转换成FormData对象即可。

//通过document.querySelector(".form")获取匹配的第一个表单
//想要获取所有匹配的元素用document.querySelectorAll(".form")
var fd = new FormData($("#form"));
//额外添加参数
fd.append("CustomField", "This is some extra data"); $.ajax({
url: url,
type: "POST",
data: fd,
processData: false, // 不处理数据
contentType: false // 不设置内容类型
});

提示:若重服务器中获取到的是json 数组的话,需要用$.parseJSON()转为json对象来处理

ajax 数据请求(一)同域的更多相关文章

  1. 微信小程序的ajax数据请求wx.request

    微信小程序的ajax数据请求,很多同学找不到api在哪个位置,这里单独把小程序的ajax请求给列出来,微信小程序的请求就是wx.request这个api,wx.request(一些对象参数),微信小程 ...

  2. Ajax --- 数据请求

    下面主要介绍(JS原生)数据请求的主要步骤: Ajax 数据请求步骤: 1.创建XMLHttpRequest对象 2.准备数据发送 3.执行发送 4.指定回掉函数 第一步:创建XMLHttpReque ...

  3. VueJS搭建简单后台管理系统框架 (二) 模拟Ajax数据请求

    开发过程中,免不了需要前台与后台的交互,大部分的交互都是通过Ajax请求来完成,在服务端未完成开发时,前端需要有一个可以模拟Ajax请求的服务器. 在NodeJs环境下,通过配置express可访问的 ...

  4. ajax数据请求5(php格式)

    ajax数据请求5(php格式): <!DOCTYPE html> <html> <head> <meta charset="UTF-8" ...

  5. ajax数据请求4(xml格式)

    ajax数据请求4(xml格式): <!doctype html> <html> <head> <meta charset="utf-8" ...

  6. ajax数据请求3(数组json格式)

    ajax数据请求3(数组json格式) <!doctype html> <html> <head> <meta charset="utf-8&quo ...

  7. ajax数据请求2(json格式)

    ajax数据请求2(json格式) <!DOCTYPE html> <html> <head> <meta charset="UTF-8" ...

  8. AJAX数据请求

    ajax数据请求需要四个步骤:(请求文本内容) 1.创建XMLHttpRequest对象: 2.打开与服务起的链接: 3.发送给服务器: 4.响应就绪. <!DOCTYPE html> & ...

  9. 前端笔记之服务器&Ajax(下)数据请求&解决跨域&三级联动&session&堆栈

    一.请求后端的JSON数据 JSON是前后端通信的交互格式,JSON(JavaScript Object Notation, JS 对象标记) 是一种轻量级的数据交换格式. JSON是互联网各个后台与 ...

  10. ajax数据请求的理解

    一,请求 发送请求有两种方式:get 跟 post . 1.get仅请求数据,不需要服务端做处理,最后会返回指定的资源. 2.post可以提交数据,服务端根据提交的数据做处理,再返回数据. 二,创建X ...

随机推荐

  1. [并发并行]_[C/C++]_[C++标准库里的线程安全问题]

    场景 1.写普通的程序时, 经常会使用cout来做输出, 每个进程只有一个控制台, 如果多线程调用cout时会出状况吗? 2.之所以研究cout会不会在并发下调用有问题, 是因为曾经有一个bug的崩溃 ...

  2. 24-[模块]-re

    1.引入re 请从以下文件里取出所有的手机号 姓名 地区 身高 体重 电话 况咏蜜 北京 171 48 13651054608 王心颜 上海 169 46 13813234424 马纤羽 深圳 173 ...

  3. 详解 nginx location ~ .*\.(js|css)?$ 什么意思?

    语法规则: location [=|~|~*|^~] /uri/ { … } = 开头表示精确匹配 ^~ 开头表示uri以某个常规字符串开头,理解为匹配 url路径即可.nginx不对url做编码,因 ...

  4. 新买的orico蓝牙usb连接器使用方法与驱动

    因为买的型号是 BTA-403 ,所以需要下载该型号驱动 安装好后,可能会出现找不到蓝牙设备问题,所以需要重启机器,并且手动将pc蓝牙连接到手机蓝牙,然后手机蓝牙再连接蓝牙耳机,此时蓝牙耳机会显示连接 ...

  5. android targetSdkVersion>=26收不到广播的处理

    背景:GP新政策,要求Google Player上架应用的targetSdkVersion>=26. 一. 为啥GP要求targetSdkVersion>=26? 1 targetSdkV ...

  6. 使用Sublime Text 3作为React Native的开发IDE

    1.下载安装Sublime 3 Sublime 3的下载地址:http://www.sublimetext.com/3 选相应的平台进行下载,安装. 2.安装Package Control 默认的Su ...

  7. 关于判断用户输入的是不是int类型,这次没有正则表达式

    末尾没有目的地的出租车,污点证人禁止入内!!! 不同的尝试有不同的方法 关于int类型的判断,我尝试了这么一个方法,可行,只是笨 正则表达式我没有搞清楚,没办法给大家讲解,欢迎各位明白人讲解,或者是我 ...

  8. 私有Docker仓库login Error response from daemon: Get https://x.x.x.x/v2/: dial tcp x.x.x.x:443: connect: connection refused

    一.登陆私有仓库错误: docker login --username=evan 192.168.0.203 Error response from daemon: Get https://192.1 ...

  9. Python之NMAP详解

    一.NMAP简介 NMap,也就是Network Mapper,最早是Linux下的网络扫描和嗅探工具包. nmap是一个网络连接端扫描软件,用来扫描网上电脑开放的网络连接端.确定哪些服务运行在哪些连 ...

  10. Spring Cloud(二):服务注册与发现 Eureka【Finchley 版】

    Spring Cloud(二):服务注册与发现 Eureka[Finchley 版]  发表于 2018-04-15 |  更新于 2018-05-07 |  上一篇主要介绍了相关理论,这一篇开始我们 ...