在jquery中字符串序列化方法包括有param() 、serialize() 、serializeArray(),在这里对其常用做法进行总结。

  1. $.param()方法
    这是serialize()方法的核心,用来对一个数组或对象按照key/value进行序列化。

    常用方法:

     直接传递一个obj,直接转化成key=value然后用&连接起来了
    $.param({name:'bill',age:18});
    结果:name=bill&age=18
    这里的{X:Y,A:B}会变成X=Y&A=B的格式 或者name value键值对组成的数组,这个好说,name=value然后用&拼起来
    $.param([
    {name:'name',value:'bill'},
    {name:'age',value:18}
    ]);
    结果:name=bill&age=18
    这里的name:'name'两个name是不同的,name value是固定格式
    这里的{name:XXX,value:YYY} 会变成XXX=YYY的格式,比起上面的写法,显得更啰嗦 当name出现相同的时候
    $.param([
    {name:'name',value:'bill'},
    {name:'name',value:'tom'}
    ]);
    结果:name=bill&name=tom
    这样的话,有些后端语言是取不到两个name的 但如果这样呢?
    $.param([
    {
    name:'name',
    value:['bill','tom']
    }
    ]);
    结果:name=tom,bill
    居然用逗号把value接起来了,好吧,后端分割开也行 用传递一个obj的方法呢?
    $.param({
    name:['bill','tom'],
    age:[18,19],
    sex:["male","female"]
    });
    结果:name[]=bill&name[]=tom&age[]=18&age[]=19&sex[]=male&sex[]=female
    name,age,sex被自动加上中括号了,
    对于php来说,$_REQUEST['name'],$_REQUEST['age'],$_REQUEST['sex']都是array了
    对应好下角标,3个person的信息就传递过来了 换成第二种固定格式:
    $.param([
    {name:'name',value:['bill','tom']},
    {name:"age",value:[18,19]},
    {name:"sex",value:["male","female"]}
    ])
    结果:name=bill,tom&age=18,19&sex=male,female

jquery字符串序列化方法总结的更多相关文章

  1. 分享一个 jquery serializeArray()序列化方法

    http://www.365mini.com/page/jquery-serializearray.htm http://www.365mini.com/diy.php?f=jquery-serial ...

  2. 关于jquery的serialize方法转换空格为+号的解决方法

    jquery的 serialize()方法,可以对表单项进行序列化,这本来是很方便的一个功能:但是实际使用中去发现了如下问题:例如:< textarea name="content&q ...

  3. C#字符串数组排序 C#排序算法大全 C#字符串比较方法 一个.NET通用JSON解析/构建类的实现(c#) C#处理Json文件 asp.net使用Jquery+iframe传值问题

    C#字符串数组排序   //排序只带字符的数组,不带数字的 private   string[]   aa   ={ "a ", "c ", "b & ...

  4. 第三章 JQuery: HelloWorld--常见方法--css--选择器--筛选器--属性--效果--事件--数组操作--字符串操作--对象转换

    1.jQuery简介 为了简化JavaScript 的开发, 一些JavsScript 库诞生了. JavaScript库封装了很多预定义的对象和实用函数.能帮助使用者建立有高难度交互的页面, 并且兼 ...

  5. jquery中$.ajax方法提交表单

    function postdata(){                        //提交数据函数 $.ajax({                                //调用jqu ...

  6. jQuery.extend()方法和jQuery.fn.extend()方法源码分析

    这两个方法用的是相同的代码,一个用于给jQuery对象或者普通对象合并属性和方法一个是针对jQuery对象的实例,对于基本用法举几个例子: html代码如下: <!doctype html> ...

  7. jQuery的ajax 方法提交多个对象数组问题 C# traditional $.param

    当用$.ajax()向后台提交参数时,如果参数中数组的话一般在后台会用List<T>接收;但老是不成功如下面代码 "}]; "}]; function addUser( ...

  8. jquery通过ajax方法获取json数据不执行success

    1.jquery通过ajax方法获取json数据不执行success回调 问题描述:jquery通过ajax方法获取json数据不执行success回调方法 问题原因:json格式存在问题或不符合标准 ...

  9. Jquery源码中的Javascript基础知识(四)— jQuery.fn.init方法

    $() 即调用了jQuery.fn.init方法 jQuery = function( selector, context ) { return new jQuery.fn.init( selecto ...

随机推荐

  1. 环境变量PATH

    一.举例 我在用户主文件夹执行命令“ls”,会在屏幕显示该文件夹下的所有文件.然而,ls的完整文件名为“/bin/ls”,按道理我不在/bin下要想执行ls命令必须输入“/bin/ls”,但我仅仅需要 ...

  2. PHPCMS v9表单向导中怎么加入验证码

    表单想到比较简单,所以没有加入验证码的功能.网上的类似教程又大多数不准确.所以亲自测试了一下,发现下面的方法是可用的.希望对有需求的朋友们有所帮助. 1.首先是调用表单的页面加入验证码.表单js调用模 ...

  3. Alpha 冲刺(1/10)

    队名 火箭少男100 组长博客 林燊大哥 作业博客 Alpha 冲鸭! 成员冲刺阶段情况 林燊(组长) 过去两天完成了哪些任务 协调各成员之间的工作,对多个目标检测及文字识别模型进行评估.实验,选取较 ...

  4. Java微笔记(1)

    一,Arrays 类是 Java 中提供的一个工具类,在 java.util 包中.该类中包含了一些方法用来直接操作数组,比如可直接实现数组的排序.搜索 1. 排序 语法: Arrays.sort(数 ...

  5. TCP系列29—窗口管理&流控—3、Nagle算法

    一.Nagle算法概述 之前我们介绍过,有一些交互式应用会传递大量的小包(称呼为tinygrams),这些小包的负载可能只有几个bytes,但是TCP和IP的基本头就有40bytes,如果大量传递这种 ...

  6. Spring Boot(五)启动流程分析

    学习过springboot的都知道,在Springboot的main入口函数中调用SpringApplication.run(DemoApplication.class,args)函数便可以启用Spr ...

  7. 【week3】四则运算 单元测试

    上一周的四则运算有bug,这次补充正确代码: // 中缀转后缀 public String[] SolveOrder(String[] in, HashMap<String, Integer&g ...

  8. Python2中编码错误---重组人表皮生长因子凝胶(易孚格式转化为UTF-8

    在python2的使用中,总会遇到各种各样的编码问题,这也是使用Python2最头疼的一件事情,幸好python3解决了编码的问题. 下面我在爬虫时遇到的类似重组人表皮生长 ...

  9. dwarf是如何处理栈帧的?

    dwarf是如何处理栈帧的? DW_AT_frame_base 表明函数栈帧的起始点 95 < 1><0x000000ca>    DW_TAG_subprogram 96   ...

  10. 7款很棒的 HTML5 视频播放器

    做个连接:http://www.cnblogs.com/lhb25/archive/2011/06/27/7-great-html-5-video-player-scripts.html