[jQ/PHP]再谈使用JS数组储值的运用(提交PHP处理)
---------------------------------------------------------------------------------------------------
从一个例子中看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处理)的更多相关文章
- [jQ/PHP]使用JS数组储值的两种情况(提交PHP处理)
---------------------------------------------------------------------------------------------------- ...
- 再谈React.js实现原生js拖拽效果
前几天写的那个拖拽,自己留下的疑问...这次在热心博友的提示下又修正了一些小小的bug,也加了拖拽的边缘检测部分...就再聊聊拖拽吧 一.不要直接操作dom元素 react中使用了虚拟dom的概念,目 ...
- js数组设置值操作
js中给数组中添加新值的方式: var flow=[]; for(var i=0;i<21;i++){ flow.push(Math.floor(Math.random()*(30+((i%12 ...
- JS数组键值,数组合并,
eg: var arr = [] arr.test = '测试'; arr.push(1); arr.push(2); arr.obj = '对象'; console.log(arr);// [ 1, ...
- js数组键入值push和 arr[]i]区别
push 和 arr[i] 遍历 var arr = new Array(); $(":check").each(function(i){if(this.checked==true ...
- 再谈js对象数据结构底层实现原理-object array map set
如果有java基础的同学,可以回顾下<再谈Java数据结构—分析底层实现与应用注意事项>:java把内存分两种:一种是栈内存,另一种是堆内存.基本类型(即int,short,long,by ...
- 再探JS数组原生方法—没想到你是这样的数组
最近作死又去做了一遍javascript-puzzlers上的44道变态题,这些题号称"JS语言专业八级"的水准,建议可以去试试,这里我不去解析这44道题了, ...
- 再谈 javascript 数组去重
前言 数组去重方法老生常谈,既然是常谈,我也来谈谈 双层循环 也许我们首先想到的是使用 indexOf 来循环判断一遍,但在这个方法之前,让我们先看看最原始的方法: var array = [1,1, ...
- 再谈js的作用域
再谈js的作用域 面试中遇到的题目: 题目一: var word = "hello world"; (function(){ alert(word); var word = ...
随机推荐
- 《Linux 性能及调优指南》3.2 CPU瓶颈
翻译:飞哥 ( http://hi.baidu.com/imlidapeng ) 版权所有,尊重他人劳动成果,转载时请注明作者和原始出处及本声明. 原文名称:<Linux Performance ...
- Windows Server 2016 启用完整版任务管理器
众所周知 Windows Server 2012以上的任务管理器是被阉割过的 那么如何启用呢?首先把你的任务管理器复制一份出来位置:系统盘\Windows\System32\Taskmgr.exe和系 ...
- redis中key过期事件
刚到新公司一个月左右,有个新需求,想做定时任务,比如在用户注册时间的3天后推送用户一条消息. 从刚开始脑子里面闪现的数据库轮询,立马否定掉(浪费资源),再到linux系统的定时任务,但是当用户量过大时 ...
- underscore函数存在两种用法
var _ = require('underscore'); var a = {"a": 1, "b": 2}; console.log(_(a).size() ...
- 在Linux上git pull线上仓库代码时,出现error: Your local changes to the following files would be overwritten by merge
在Windows上工作时未出现过该问题,于是通过命令: git diff 查看差异,得到结果: diff --git a/start_crons.sh b/start_crons.sh old mod ...
- Xcode 如何导入IOS项目
前言:基于mac上如何导入ios项目的文章,手机自动化项目需要进行手机元素定位,前提是导入IOS项目 1.安装Xcode 到官网下载mac版Xcode:当前使用版本Version 7.3.1 http ...
- LeetCode 5. Longest Palindromic Substring & 回文字符串
Longest Palindromic Substring 回文这种简单的问题,在C里面印象很深啊.希望能一次过. 写的时候才想到有两种情况: 454(奇数位) 4554(偶数位) 第1次提交 cla ...
- 在虚拟机中安装ubuntu
初始安装: 1.安装新虚拟机时,选择稍后安装操作系统,这可以自己设置语言等信息 2.修改自定义硬件:为网卡生成一个mac地址,(这里需要注意,有时网卡会冲突,导致连接时好时坏,以后可以删除掉网卡,重新 ...
- 精通Web Analytics 2.0 (13) 第十一章:变身分析忍者的指导原则
精通Web Analytics 2.0 : 用户中心科学与在线统计艺术 第十一章:变身分析忍者的指导原则 这个激动人心的一章,分析了几乎所有工作的各个方面. 目标很简单:使用成熟的方法来帮助避免淹死的 ...
- 简单ATM机功能实现及感想
感想: 在那一天下午气喘吁吁的上了六楼 在建民的课上 都要带电脑 第一次上这样的课,每一次都是个段子 ,这一次考试是学前考试,什么也不知道 ,但是通过百度, 发现JAVA有很多还都和C语言相似的地方 ...