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

从一个例子中看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. GDB 调试 ---转 比较全的东东

    转自 程序人生:http://www.programlife.net/gdb-manual.html Linux 包含了一个叫gdb 的GNU 调试程序.gdb 是一个用来调试C和C++程序的强力调试 ...

  2. 舞蹈链(DLX)

    舞蹈链(DLX) Tags:搜索 作业部落 评论地址 一.概述 特别特别感谢这位童鞋His blog 舞蹈链是一种优美的搜索,就像下面这样跳舞- 舞蹈链用于解决精确覆盖或者重复覆盖的问题 你可以想象成 ...

  3. centos7安装zookeeper3.4.12集群

    zookeeper的三要素: 1.一致,能够保证数据的一致性 2.有头,始终有一个leader,node/2+1个节点有效,就能正常工作 3.数据树,树状结构且每个树必须有数据 1. 环境准备 操作系 ...

  4. Could not resolve all files for configuration;Andriod在build.gradle添加compile files()报错

    在build.gradle中添加个 compile files('libs/alipaySdk-20170922.jar') 就一直报这个错误 Error:Could not resolve all ...

  5. Spring获取application.properties

    方法一:@Value获取属性值 首先在application.properties中添加属性值 app.name=MyApp app.description=${app.name} is a Spri ...

  6. ajax事件执行顺序

    1.ajaxStart(全局事件) 2.beforeSend 3.ajaxSend(全局事件) 4.success(请求成功时调用) 5.ajaxSuccess(全局事件) 6.error 7.aja ...

  7. MySQL学习之——锁(行锁、表锁、页锁、乐观锁、悲观锁等)

    转载. https://blog.csdn.net/mysteryhaohao/article/details/51669741 锁,在现实生活中是为我们想要隐藏于外界所使用的一种工具.在计算机中,是 ...

  8. Java课程作业之动手动脑(五)

    1.请阅读并运行AboutException.java示例. import javax.swing.*; class AboutException { public static void main( ...

  9. 重识linux-linux主机上的用户信息传递

    1 查询用户 w,who,last,lastlog 1)在线用户查询  w ,who 2)账号最近的登录时间  last lastlog 2 用户对谈 write,mesg,wall 1)write ...

  10. 47.纯 CSS 创作一个蝴蝶标本展示框

    html,body{ margin:; padding:; } body{ height: 100vh; display: flex; justify-content: center; align-i ...