---恢复内容开始---

//php页面
public function test(){
$id="1";
$data=Db::table('week3_goods')
->join("week3_hp","week3_goods.g_id=week3_hp.goods_id")
->join("week3_goods_attr","week3_hp.g_a_id=week3_goods_attr.g_a_id")
->where("week3_goods.g_id",$id)
->select();
//print_r($data);die;
foreach($data as $k =>$v){
if($v['a_id']){
$ids=explode(',',$v['a_id']);
foreach($ids as $kk =>$vv){
$res=Db::table('week3_attr')->where("a_id",$vv)->find();
$ids[$kk]=$res['a_val'];
$data[$k]['attr']=$ids;
}
}
}
$color=Db::table('week3_attr')->where("a_name",'颜色')->select();
$buttor=Db::table('week3_attr')->where("a_name","内存")->select();
return view("index",['color'=>$color,'buttor'=>$buttor,'arr'=>$data]);
} //添加数据
public function add(){
$data=Request::instance()->param();
foreach($data['color'] as $k =>$v){
$arr['goods_id']=$data['goods_id'];
$arr['attr']=$data['color'][$k].",".$data['buttor'][$k];
$arr['hp_num']=$data['hp_num'][$k];
$arr['stock']=$data['stock'][$k];
$res[]=$arr;
}
print_r($res);
}
//hrml页面   循环输出数据
<center>
<tr>
<th>
商品名称:{$arr[0]['g_name']}
货物:{$arr[0]['hp_num']}
</th>
</tr>
<table>
<form action="{:url('login/add')}">
<input type="hidden" value="{$arr[0]['goods_id']}" name="goods_id"/>
<tr>
<td>颜色</td>
<td>内存</td>
<td>货号</td>
<td>库存</td>
<td>操作</td>
</tr>
{volist name="arr" id="vv"}
<tr>
<td>
<select name="color[]" id="color">
<?php foreach($color as $k =>$v){?>
<option value="<?php echo $v['a_id']?>"
<?php if($v['a_val']==$vv['attr'][0]){
echo "selected";
} ?>><?php echo $v['a_val'];?>
</option>
<?php }?>
</select>
</td>
<td>
<select name="buttor[]" id="buttor">
<?php foreach($buttor as $k =>$v){?>
<option value="<?php echo $v['a_id']?>"
<?php if($v['a_val']==$vv['attr'][0]){
echo "selected";
} ?>><?php echo $v['a_val'];?>
</option>
<?php }?>
</select>
</td>
<td><input type="text" value="{$vv['hp_num']}" name="hp_num[]"/></td>
<td><input type="text" value="{$vv['stock']}" name="stock[]"/></td>
<td><input type="button" value="+" class="jia"/></td>
</tr>
{/volist}
<tr>
<td><input type="submit" value="添加"/></td>
</tr>
</form>
</table>
</center> //jquery 界面 //加减号的改变
$(document).on('click','.jia',function(){
var obj=$(this).parents("tr").clone();
obj.find(".jia").attr('value','-');
obj.find(".jia").attr('class','jian');
$(this).parents("tr").after(obj);
}); $(document).on('click','.jian',function(){
$(this).parents("tr").remove();
});

---恢复内容结束---

//php页面
public function test(){
$id="1";
$data=Db::table('week3_goods')
->join("week3_hp","week3_goods.g_id=week3_hp.goods_id")
->join("week3_goods_attr","week3_hp.g_a_id=week3_goods_attr.g_a_id")
->where("week3_goods.g_id",$id)
->select();
//print_r($data);die;
foreach($data as $k =>$v){
if($v['a_id']){
$ids=explode(',',$v['a_id']);
foreach($ids as $kk =>$vv){
$res=Db::table('week3_attr')->where("a_id",$vv)->find();
$ids[$kk]=$res['a_val'];
$data[$k]['attr']=$ids;
}
}
}
$color=Db::table('week3_attr')->where("a_name",'颜色')->select();
$buttor=Db::table('week3_attr')->where("a_name","内存")->select();
return view("index",['color'=>$color,'buttor'=>$buttor,'arr'=>$data]);
} //添加数据
public function add(){
$data=Request::instance()->param();
foreach($data['color'] as $k =>$v){
$arr['goods_id']=$data['goods_id'];
$arr['attr']=$data['color'][$k].",".$data['buttor'][$k];
$arr['hp_num']=$data['hp_num'][$k];
$arr['stock']=$data['stock'][$k];
$res[]=$arr;
}
print_r($res);
}
//hrml页面   循环输出数据
<center>
<tr>
<th>
商品名称:{$arr[0]['g_name']}
货物:{$arr[0]['hp_num']}
</th>
</tr>
<table>
<form action="{:url('login/add')}">
<input type="hidden" value="{$arr[0]['goods_id']}" name="goods_id"/>
<tr>
<td>颜色</td>
<td>内存</td>
<td>货号</td>
<td>库存</td>
<td>操作</td>
</tr>
{volist name="arr" id="vv"}
<tr>
<td>
<select name="color[]" id="color">
<?php foreach($color as $k =>$v){?>
<option value="<?php echo $v['a_id']?>"
<?php if($v['a_val']==$vv['attr'][0]){
echo "selected";
} ?>><?php echo $v['a_val'];?>
</option>
<?php }?>
</select>
</td>
<td>
<select name="buttor[]" id="buttor">
<?php foreach($buttor as $k =>$v){?>
<option value="<?php echo $v['a_id']?>"
<?php if($v['a_val']==$vv['attr'][0]){
echo "selected";
} ?>><?php echo $v['a_val'];?>
</option>
<?php }?>
</select>
</td>
<td><input type="text" value="{$vv['hp_num']}" name="hp_num[]"/></td>
<td><input type="text" value="{$vv['stock']}" name="stock[]"/></td>
<td><input type="button" value="+" class="jia"/></td>
</tr>
{/volist}
<tr>
<td><input type="submit" value="添加"/></td>
</tr>
</form>
</table>
</center>

//jquery   界面

//加减号的改变
$(document).on('click','.jia',function(){
var obj=$(this).parents("tr").clone();
obj.find(".jia").attr('value','-');
obj.find(".jia").attr('class','jian');
$(this).parents("tr").after(obj);
}); $(document).on('click','.jian',function(){
$(this).parents("tr").remove();
});

sku 加减号的增删的更多相关文章

  1. velocity加减运算注意格式 ,加减号的左右都要有空格

    velocity加减运算注意格式 ,加减号的左右都要有空格 #set( $left= $!biz.value - $vMUtils.getReturnMoney($!biz.billBuy) )

  2. 加减号改变input[type=number]的数值,基于[zepto.js]

    通过点击加减号可以更改input的数值,样式如下图: 具体的html代码如下: <div class="xh-lxx-cart-count1"> <span cl ...

  3. Objective-C 中不带加减号的方法

    显而易见的事实是,Objective-C 中,+ 表示类方法,- 表示实例方法. 但看别人代码过程中,还会发现一种,不带加减号的方法. @implementation MyViewController ...

  4. 微信小程序组件 加减号弹出框

    <!-- 点击立即抢拼弹出框 --> <view class='add-rob' bindtap="setModalStatus" data-status=&qu ...

  5. 293. Flip Game只翻转一步的加减号翻转游戏

    [抄题]: You are playing the following Flip Game with your friend: Given a string that contains only th ...

  6. eclipse的包的加减号展开方式

    这是win7系统下面 导航树的风格 可能你不太习惯 一个最简单的方法: 桌面新建个 eclipse 快捷方式--->右键属性--->兼容性  勾上以兼容模式运行这个程序  

  7. 自己写的Ext树,Ext3.4,静态全部加载

    var load = function(){ /** * 书籍资料目录 */ var bookIT = new Ext.tree.TreeNode({ text:"IT", lea ...

  8. 去除input[type=number]最右边的spinners(默认加减符号)

    // 去掉input[type=number]默认的加减号 input[type='number'] { -moz-appearance:textfield; } input[type=number] ...

  9. Django lazy load 懒加载 倒序查询

    Django orm默认懒加载   Django orm默认使用的懒加载,即使用的时候才去访问数据库,且每次默认取最少的数据,当然这样有好处也有坏处... 坏处: 会导致频繁的查询数据库,如涉及到外键 ...

随机推荐

  1. JS 事件绑定、事件监听、事件委托详细介绍

    原:http://www.jb51.net/article/93752.htm 在JavaScript的学习中,我们经常会遇到JavaScript的事件机制,例如,事件绑定.事件监听.事件委托(事件代 ...

  2. Tomcat的manager app管理web项目

    1.在浏览器地址栏输入http://localhost:8080/进入,如下图所示: 2.在点击Manager App 前,首次使用则需要对tomcat目录下的conf/tomcat-users.xm ...

  3. 动态拼接SQL 语句

    public T Get<T>(int id) { Type type = typeof(T); string columnStrings = string.Join(",&qu ...

  4. mac 下安装ES 与 Head插件 以及安装Kibana

    一.安装Elasticsearch 在Mac上可以使用brew快速安装Elasticsearch brew install elasticsearch 安装完成后可使用elasticsearch -- ...

  5. 实现一个键对应多个值的字典(multidict)

    一个字典就是一个键对应一个单值的映射.如果你想要一个键映射多个值,那么你就需要将这多个值放到另外的容器中, 比如列表或者集合里面.比如,你可以像下面这样构造这样的字典: d = { , , ], , ...

  6. 【log4net】配置文件解释

    ASP.NET MVC 1.web.config: <configSections> <section name="log4net" type="log ...

  7. 一篇很好的java异常框架讲解

    https://www.cnblogs.com/itcui/p/6400499.html 其实原作者是csdn的一名博主,实在受不了csdn的广告,所以就摘录这篇

  8. 如何完整卸载Mysql数据库

    mysql数据库首次安装失败,后来多次安装均失败,原因就是没有完全卸载mysql数据库 那么如何完整卸载MYSQL数据库呢? 介绍mysql数据库完整卸载的方法 完美卸载MYSQL 在管理工具-服务里 ...

  9. 写给前端的Python依赖管理指北

    概述 在Python的项目中,我们可以通过pip来安装依赖包,但是不像npm install,pip默认安装的依赖包会挂在全局上,不利于项目工程协作. 这时候需要一款类似npm的工具记录我们的项目依赖 ...

  10. 《剑指offer》第四十五题(把数组排成最小的数)

    // 面试题45:把数组排成最小的数 // 题目:输入一个正整数数组,把数组里所有数字拼接起来排成一个数,打印能拼 // 接出的所有数字中最小的一个.例如输入数组{3, 32, 321},则打印出这3 ...