$.each是像for一样的循环,按序列获取没一个对象。
each里的this指的当前的ipnut,select等,获取ipnut的name属性值
obj[this['name']] =this['value']最后返回由name和值组合的数组对象。
1、将form表单元素的name与value进行组合,实现表单数据的序列化,从而减少表单元素的拼接,提高工作效率。2、异步上传文件
1、创建一个空对象:
2、通过表单对formData进行初始化
创建表单:
通过表单元素作为参数,实现对formData的初始化:
1、通过get(key)与getAll(key)来获取相对应的值
2、通过append(key,value)在数据末尾追加数据
3、通过set(key, value)来设置修改数据
key的值不存在,会添加一条数据
key的值存在,会修改对应的value值
4、通过has(key)来判断是否存在对应的key值
5、通过delete(key)可以删除数据
创建表单:
发送数据:
1、serialize()方法描述:序列化表单内容为字符串,用于Ajax请求。
格式:var data = $("form").serialize()
2.serializeArray()方法
描述:序列化表单元素(类似'.serialize()'方法)返回JSON数据结构数据。
注意,此方法返回的是JSON对象而非JSON字符串。需要使用插件或者<a>第三方库</a>进行字符串化操作。
格式:var jsonData = $("form").serializeArray()
在使用ajax提交表单数据时,以上两种方法都可以将data参数设置为$("form").serialize()或$("form").serializeArray()。