zoukankan      html  css  js  c++  java
  • 关于ajax表单提交$.param()

    jQuery.param( )共有两类构造函数:创建一个数组,一个普通的对象,或一个jQuery对象的序列化表示形式,用于URL查询字符串或Ajax请求。 如果传递一个jQuery对象传递,它应该包含输入元素(愚人码头注:input,textarea等)的名称/值属性。

    1.jQuery.param( obj)  obj:一个用来序列化的一个数组,普通的对象或一个Jquery对象

    2.jQuery.param( obj,traditional)  obj:同上   traditional:布尔变量:指示是否执行了传统的“shallow”的序列化。、

    可以将表单元素的值 转换为 序列化字符串。

    如果传递的对象是一个数组,它必须是一个对象数组,其格式要跟.serializeArray()返回的格式一样:

    例如:

    [{name:"first",value:"Rick"},
    {name:"last",value:"Astley"},
    {name:"job",value:"Rock Star"}]
    input元素也是序列化的元素
     
    例子
     1 var myObject = {
     2   a: {
     3     one: 1, 
     4     two: 2, 
     5     three: 3
     6   }, 
     7   b: [1,2,3]
     8 };
     9 var recursiveEncoded = $.param(myObject);
    10 var recursiveDecoded = decodeURIComponent($.param(myObject));
    11  
    12 alert(recursiveEncoded);
    13 alert(recursiveDecoded);
    View Code

    recursiveEncoded 和 recursiveDecoded 的结果如下:

    a%5Bone%5D=1&a%5Btwo%5D=2&a%5Bthree%5D=3&b%5B%5D=1&b%5B%5D=2&b%5B%5D=3 
    a[one]=1&a[two]=2&a[three]=3&b[]=1&b[]=2&b[]=3

    $.param({ a: [2,3,4] }) // "a=2&a=3&a=4"
    // >=1.4:
    $.param({ a: [2,3,4] }) // "a[]=2&a[]=3&a[]=4"
     
    // <=1.3.2:
    $.param({ a: { b:1,c:2 }, d: [3,4,{ e:5 }] }) // "a=[object+Object]&d=3&d=4&d=[object+Object]"
    // >=1.4:
    $.param({ a: { b:1,c:2 }, d: [3,4,{ e:5 }] }) // "a[b]=1&a[c]=2&d[]=3&d[]=4&d[2][e]=5"
     
    其中HTML中ASCII Value 与 URL-encode 参考:
    http://www.w3school.com.cn/tags/html_ref_urlencode.html
     
  • 相关阅读:
    .net做UG NX二次开发(VB.net) / NX Secondry Dev. with .net using VB.net Code
    UGS Object ID 工具 [开源]
    Build a NX Open .NET application
    Open C、Open C++和NXOpen C++混合开发
    UG二次开发技术的研究
    ufun视频教程
    互联网上的阴暗战争
    谈谈UG二次开发的Open和NXOpen
    IBM云计算平台下 Windows Server 2003虚拟机的使用
    使用IBM云计算平台虚拟机
  • 原文地址:https://www.cnblogs.com/dobestself-994395/p/4362983.html
Copyright © 2011-2022 走看看