首页 > 代码库 > [jQ/PHP]使用JS数组储值的两种情况(提交PHP处理)
[jQ/PHP]使用JS数组储值的两种情况(提交PHP处理)
----------------------------------------------------------------------------------------------------
HTML部分:
<table> <tr class="active "> <td>排序</td> <td>序号</td> </tr> <?php if($lesson_list):?> <?php foreach($lesson_list as $val):?> <tr> <td><input class="form-control" type="text" name="lesson_sort" value="<?=$val[‘lesson_sort‘];?>"></td> <td><?=$val[‘id‘];?></td> </tr> <?php endforeach;?> <?php endif;?>
</table>
相关要点:
/** * 如何判断对象存在或为空
* @黑眼诗人 <www.chenwei.ws> */1. JS判断对象是否存在: if(typeof myObj == ‘undefined‘) { var myObj = {} };2. 判断对象是否为空:/** * 判断对象是否为空 * @param obj obj 对象 * @return bool true非空,false为空 * @Chenwei <www.chenwei.ws> */function isEmptyObj(obj){ var k = 0; var obj = obj; for(var i in obj) { k++; } if(k != 0) { return true; } else { return false; }}
-----------------------------------@黑眼诗人 <www.Chenwei.ws>-------------------------------
JS端:
(一)
/**
* 索引数组形式
* @黑眼诗人 <www.chenwei.ws>
*/var info = new Array(); //创建数组对象,这里不能使用var info = {}; 提示info.push is not a function$(‘input[name="lesson_sort"]‘).each(function(i, n){ var id = $(this).parent(‘td‘).next(‘td‘).text(); var lesson_sort = $(this).val(); info.push(lesson_sort); //数组尾部添加元素,索引数组形式});//console.log(info); //索引数组对象储值,["0","0","0"]var str = JSON.stringify(info); //转为字符串,["0","0","0"](二)/** * 前台保存提交排序(关联数组形式) * @黑眼诗人 <www.chenwei.ws> */function saveCateSort(){ var info = {}; //创建对象,这里不能使用var info = new Array(); 最后输出的值并非关联数组 $(‘input[name="lesson_sort"]‘).each(function(i, n){ var id = $(this).parent(‘td‘).next(‘td‘).text(); var lesson_sort = $(this).val(); info[id] = lesson_sort; //关联数组储值 }); //console.log(info); //Object { 67="0", 68="0", 69="0"} var str = JSON.stringify(info); //转为json字符串,{"67":"0","68":"0","69":"0"} if(isEmptyObj(info)){ //非空时更新 $.post(base_url + ‘?d=admin&c=cate&m=ajax_cate_sort‘, {str:str}, function(data){ if(data =http://www.mamicode.com/= ‘1‘){ my_custom_tips(‘操作成功!‘, 2000, 1); }else{ my_custom_tips(data, 2000); } }); }else{ //空时提示 my_custom_tips(‘操作成功!‘, 2000, 1); }}
PHP端:
/** * 保存排序(控制器方法,局部)
* @黑眼诗人 <www.chenwei.ws> */public function ajax_save_sort(){ $str = json_decode($this->input->post(‘str‘));
if($str) { foreach($str as $k=>$v) { $data[‘cate_sort‘] = $v; $bool = $this->cate->updateCateSort($k, $data); } if( ! $bool) { echo ‘操作失败!‘; exit; } else { echo ‘1‘; } } else { echo ‘1‘; }}/** * 保存排序(模型控制器方法,局部) * @黑眼诗人 <www.chenwei.ws> */public function updateCateSort($id, $data){ if($id && $data && is_array($data)) { $where = array(‘id‘ => $id); $bool = $this->db->where($where)->update(‘category‘, $data); return $bool; } else { return false; }}
[jQ/PHP]使用JS数组储值的两种情况(提交PHP处理)
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。