JSON.stringify(),
将value(Object,Array,String,Number...)序列化为JSON字符串

JSON.parse(), 将JSON数据解析为js原生值

toJSON(), 作为JSON.stringify中第二个参数(函数过滤器)补充

我们都会使用jQuery的ajax方法取得json数据但是我们有的时候也要使用json数据给PHP传值,这个怎么做哪?

首先去http://code.google.com/p/jquery-json/  下载一个jquery.json-2.Xxxx.min.js 包

二、在javascript中建立 数据格式

function ChannelDataType(){

this.typeid;

this.choice;

}

三、给这个数据格式赋值,这里采用二维数组,这样例显得比较复杂一些

for(i=0;i<arr_channel.length;i++){

if(arr_channel[i][2]>1){

var cdt=new ChannelDataType();

cdt.typeid=arr_channel[i][0];

cdt.choice=arr_channel[i][2];

arr[j]=cdt;

j=j+1;

}

}

四、压缩成json数组

var jdata=$.toJSON(arr);

五、ajax传值,在调试阶段把dataType : "text",由于是ajax,所以在php那边没法看到结果,只能通过传回echo信息来调,所以要dataType : "text",等调完了再变为dataType : "json",或者其他的。

六、PHP程序

$arrChannel = json_decode($_POST['json'],true);

//echo count($arrChannel);

foreach($arrChannel as $arr)

echo( $arr['typeid']);

随机推荐

  1. pytest.6.Parametrize Fixture

    From: http://www.testclass.net/pytest/parametrizing_fixture/ 背景 @pytest.mark.parametrize 装饰器可以让我们每次参 ...

  2. 测试教程网.unittest教程.1. 基本概念

    From:http://www.testclass.net/pyunit/basic_concept/ unittest是python自带的单元测试框架,有时候又被称为”PyUnit”,是python ...

  3. C/C++基础----标准库几个工具库tuple,bitset,正则表达式,随机数,IO库

    tuple tuple可以有任意多个成员 默认初始化,值初始化 构造函数是explicit,必须直接初始化 make_tuple(v1,v2,-,vn) get<i> (t) 返回第i个数 ...

  4. MFC程序显示控制台输出

    有的时候,我们用c写的一些东西,可能需要MFC作为UI输入参数进行测试,但是程序里有大量的printf操作,这就需要MFC程序启动的时候同时打开 一个控制台,用于标准输出 查询网络,大致方法有以下两种 ...

  5. Espresso 开源了

    Google Testing Blog上发布了一篇博客,Espresso 开源了 http://googletesting.blogspot.com/2013/10/espresso-for-andr ...

  6. tarroni music

    1,tarroni http://www.tarronishoes.it/audio.php 2, <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1 ...

  7. 怎么把PNG图的位深度24位变成32位

    在PS里把图片的变成层模式,不透明度设置成99%,在保存成PNG

  8. linux安装tomcat9

    0:环境准备 :     安装tomcat需要先配置jdk,所以没有配置jdk同学,先移步Linux安装JDK 或者使用比较便捷的方法,就是apt-get或者yum安装openJDK,这样做的话,会帮 ...

  9. centos6.9安装oracle11g

    感谢强哥的文档 源文档链接 https://www.qstack.com.cn/archives/68.html #------------------------------------------ ...

  10. [UE4]场景加载界面

    就可以这样就可以了,当另外一个场景成功打开后,场景加载界面也会自动消失(因为这是加载界面是添加到当前场景). 加上delay是为了在小场景测试的时候可以方便看到加载场景,避免场景加载过快看不到,不加的 ...