---------------------------------------------------------------------------------------------------

从一个例子中看JS数组和对象的分工合作:

/**
* JS数组与对象使用.(传递多条json数据,实例局部)
* @黑眼诗人 <www.chenwei.ws>
*/
function importL() {
if(confirm('Sure?')) {
var arr = [];
var json = {}; var type_code = $('select[name="type_code"]');   //select标签节点
var le = $('input[name="le[]"]');          //checkbox节点 $.each(le, function(i, n) {
if(n.checked) {
info = {"type_code": type_code.val(), "code": $(this).val(), "the_name": $(this).attr('the_name')};
var info = JSON.stringify(info);      //转json字符串
arr.push(info);               //多个json字符串存入数组
}
json.all = arr;                  //将整个数组存入json对像, key为all (原因是ajax传参格式为json)
}); if(arr.length == 0) {
my_custom_tips('error1');
}else if(type_code.val() == 0) {
my_custom_tips('error2');
}else{
$.ajax({
type: 'post',
url: base_url + '?d=admin&c=api&m=ajax_import',
data: json,
success: function(data) {
console.log(data);
     }
});
}
}
}

成功接收到数据后, 处理就简单了:

/**
* PHP处理数据
* @黑眼诗人 <www.chenwei.ws>
*/
public function ajax_import()
{
  $info = $this->input->post('all');
  foreach($info as $val)
  {
  $arr[] = json_decode($val, true);
  }   print_r($arr);
} /*
处理后的数据格式如下,方便处理:
Array
(
[0] => Array
(
[type_code] => 111
[code] => 222
[the_name] => www.chenwei.ws
) [1] => Array
(
[type_code] => 333
[code] => 444
[the_name] => 把简单做到极致
)
)
*/

早前: [jQ/PHP]使用JS数组储值的两种情况(提交PHP处理)

[jQ/PHP]再谈使用JS数组储值的运用(提交PHP处理)的更多相关文章

  1. [jQ/PHP]使用JS数组储值的两种情况(提交PHP处理)

    ---------------------------------------------------------------------------------------------------- ...

  2. 再谈React.js实现原生js拖拽效果

    前几天写的那个拖拽,自己留下的疑问...这次在热心博友的提示下又修正了一些小小的bug,也加了拖拽的边缘检测部分...就再聊聊拖拽吧 一.不要直接操作dom元素 react中使用了虚拟dom的概念,目 ...

  3. js数组设置值操作

    js中给数组中添加新值的方式: var flow=[]; for(var i=0;i<21;i++){ flow.push(Math.floor(Math.random()*(30+((i%12 ...

  4. JS数组键值,数组合并,

    eg: var arr = [] arr.test = '测试'; arr.push(1); arr.push(2); arr.obj = '对象'; console.log(arr);// [ 1, ...

  5. js数组键入值push和 arr[]i]区别

    push 和 arr[i] 遍历 var arr = new Array(); $(":check").each(function(i){if(this.checked==true ...

  6. 再谈js对象数据结构底层实现原理-object array map set

    如果有java基础的同学,可以回顾下<再谈Java数据结构—分析底层实现与应用注意事项>:java把内存分两种:一种是栈内存,另一种是堆内存.基本类型(即int,short,long,by ...

  7. 再探JS数组原生方法—没想到你是这样的数组

    最近作死又去做了一遍javascript-puzzlers上的44道变态题,这些题号称"JS语言专业八级"的水准,建议可以去试试,这里我不去解析这44道题了, ...

  8. 再谈 javascript 数组去重

    前言 数组去重方法老生常谈,既然是常谈,我也来谈谈 双层循环 也许我们首先想到的是使用 indexOf 来循环判断一遍,但在这个方法之前,让我们先看看最原始的方法: var array = [1,1, ...

  9. 再谈js的作用域

    再谈js的作用域 面试中遇到的题目: 题目一: var word = "hello world";  (function(){  alert(word);  var word = ...

随机推荐

  1. third party sales process 继续说

    Trading company: A vendor或production plant: B END Customer: C third party sales与individual purchasin ...

  2. Java 日志

    Java日志: 参考博客:http://www.importnew.com/16331.html 当日志中包含满足特定条件的记录时,触发相应的通知机制,或者在程序运行出现错误时,快速的定位潜在的问题源 ...

  3. IntelliJ IDEA 版本控制器 - Git

    1.下载Git 2.测试Git是否安装成功 3.设置 本机 Git 标识,同时解决未设置标识产生的错误 Successfully created project 'demo' on GitHub, b ...

  4. 使用路由和远程访问服务为Hyper-V中虚拟机实现NAT上网

    众所周知,在微软的Hyper-V环境中的网络环境中没有VMware Workstation中的NAT功能,所以Hyper-V环境中虚拟机上网一般情况下需要通过设置为外部网络方可访问网络,当然也可设置为 ...

  5. is 和 == 区别,id() ,回顾编码,encode(),decode()

    1. is 和 == 区别 id()函数 == 判断两边的值 is 判断内存地址例 s = "alex 是 大 xx"# abc = id(s) # 得到内存地址# print(a ...

  6. 连接Hive的客户端界面工具–SQuirrel SQL Client

    关键字:Hive客户端.界面.SQuirrel SQL Client 刚看到一个可以连接Hive的客户端界面工具–SQuirrel SQL Client,试了一下,用起来还行,在这里记录一下安装及使用 ...

  7. 前端(慕课网)笔记二:http协议

    缓存 cors 1.http协议的主要特点: 简单快速:每个资源URI是固定的: 灵活:通过一个协议完成不同数据格式的传输 无连接:连接一次就会断开,不会保持连接 无状态:客服端和服务端是两种身份,客 ...

  8. python - requests从excel中获取测试用例数据

    HttpRequests.py #-*- coding:utf-8 -*- import requests class HttpRequests(): def http_requests(self,u ...

  9. 运行vbs脚本

    VBS是基于Visual Basic的脚本语言. VBS的全称是:Microsoft Visual Basic Script Edition.(微软公司可视化BASIC脚本版). 其语言类似Visua ...

  10. QNetworkAccessManager post()和get()方法

    GET方式提交的数据最多只能有1024字节,而POST则没有此限制. 大文件传输用post(),小文件用get(), 第一次接触Qt的Http项目,今天看了一下Post和Get的基本使用方法,就开始尝 ...