商品详细信息的代码html_品优购电商系统开发 第6章 商品录入「2」

课程目标

目标1:完成选择商品分类功能

目标2:完成品牌选择功能

目标3:完成扩展属性功能

目标4:完成规格选择功能

目标5:完成SKU商品信息功能

目标6:完成是否启用规格功能

1.商品录入【选择商品分类】

1.1需求分析

在商品录入界面实现商品分类的选择(三级分类)效果如下:

c6a62702df0dee61e2e85840990b8e3e.png

当用户选择一级分类后,二级分类列表要相应更新,当用户选择二级分类后,三级列表要相应更新。

1.2准备工作

(1)在pinyougou-shop-web工程中创建ItemCatController.(可拷贝运营商后台的代码)

(2)创建item_catService.js (可拷贝运营商后台的代码)

(3)修改goodsController.js,引入itemCatService

(4)修改goods_edit.html,添加引用

1.3代码实现

1.3.1一级分类下拉选择框

在goodsController增加代码

//读取一级分类$scope.selectItemCat1List=function(){ itemCatService.findByParentId(0).success(  function(response){  $scope.itemCat1List=response;   } );}

页面加载调用该方法

修改goods_edit.html一级分类下拉选择框

ng-options属性可以在表达式中使用数组或对象来自动生成一个select中的option列表。ng-options与ng-repeat很相似,很多时候可以用ng-repeat来代替ng-options。但是ng-options提供了一些好处,例如减少内存提高速度,以及提供选择框的选项来让用户选择。

运行效果如下:

c08513078ccb601a83acba29eb26a703.png

1.3.2二级分类下拉选择框

在goodsController增加代码:

//读取二级分类$scope.$watch('entity.goods.category1Id', function(newValue, oldValue) {  //根据选择的值,查询二级分类 itemCatService.findByParentId(newValue).success( function(response){ $scope.itemCat2List=response;   } ); }); 

$watch方法用于监控某个变量的值,当被监控的值发生变化,就自动执行相应的函数。

修改goods_edit.html中二级分类下拉框

1.3.3三级分类下拉选择框

在goodsController增加代码:

//读取三级分类$scope.$watch('entity.goods.category2Id', function(newValue, oldValue) {  //根据选择的值,查询二级分类 itemCatService.findByParentId(newValue).success( function(response){ $scope.itemCat3List=response;   } );  });

修改goods_edit.html中三级分类下拉框

1.3.4读取模板ID

在goodsController增加代码:

 //三级分类选择后 读取模板ID $scope.$watch('entity.goods.category3Id', function(newValue, oldValue) {  itemCatService.findOne(newValue).success(  function(response){  $scope.entity.goods.typeTemplateId=response.typeId; //更新模板ID   } );  }); 

在goods_edit.html显示模板ID

模板ID:{{entity.goods.typeTemplateId}}

2.商品录入【品牌选择】

2.1需求分析

在用户选择商品分类后,品牌列表要根据用户所选择的分类进行更新。具体的逻辑是根据用户选择的三级分类找到对应的商品类型模板,商品类型模板中存储了品牌的列表json数据。

33e5c098ee32ce94446f62aef241bbc6.png

2.2代码实现

(1)在pinyougou-shop-web工程创建TypeTemplateController (可从运营商后台拷贝)

(2)在pinyougou-shop-web工程创建typeTemplateService.js (可从运营商后台拷贝)

(3)在goodsController引入typeTemplateService 并新增代码

//模板ID选择后 更新品牌列表$scope.$watch('entity.goods.typeTemplateId', function(newValue, oldValue) {  typeTemplateService.findOne(newValue).success( function(response){  $scope.typeTemplate=response;//获取类型模板  $scope.typeTemplate.brandIds= JSON.parse( $scope.typeTemplate.brandIds);//品牌列表 } ); }); 

在页面goods_edit.html 引入js

添加品牌选择框

3.商品录入【扩展属性】

3.1需求分析

在商品录入实现扩展属性的录入。

c93c273e10a3c2e8bb414ed209b34010.png

3.2代码实现

修改goodsController.js ,在用户更新模板ID时,读取模板中的扩展属性赋给商品的扩展属性。

 //模板ID选择后 更新模板对象 $scope.$watch('entity.goods.typeTemplateId', function(newValue, oldValue) {  typeTemplateService.findOne(newValue).success(  function(response){  $scope.typeTemplate=response;//获取类型模板  $scope.typeTemplate.brandIds= JSON.parse( $scope.typeTemplate.brandIds);//品牌列表$scope.entity.goodsDesc.customAttributeItems=JSON.parse( $scope.typeTemplate.customAttributeItems);//扩展属性  } );  });

修改goods_edit.html

 
{{pojo.text}}

4.商品录入【规格选择】

4.1需求分析

显示规格及选项列表(复选框)如下图,并保存用户选择的结果

60650814c27e523de6a68e41f7afc67a.png

4.2代码实现

4.2.1 显示规格选项列表

由于我们的模板中只记录了规格名称,而我们除了显示规格名称还是显示规格下的规格选项,所以我们需要在后端扩充方法。

(1)在pinyougou-sellergoods-interface的TypeTemplateService.java新增方法定义

/** * 返回规格列表 * @return */public List findSpecList(Long id);

(2)在pinyougou-sellergoods-service的TypeTemplateServiceImpl.java新增方法

@Autowiredprivate TbSpecificationOptionMapper specificationOptionMapper;@Overridepublic List findSpecList(Long id) {//查询模板TbTypeTemplate typeTemplate = typeTemplateMapper.selectByPrimaryKey(id);List list = JSON.parseArray(typeTemplate.getSpecIds(), Map.class) ;for(Map map:list){//查询规格选项列表TbSpecificationOptionExample example=new TbSpecificationOptionExample();com.pinyougou.pojo.TbSpecificationOptionExample.Criteria criteria = example.createCriteria();criteria.andSpecIdEqualTo( new Long( (Integer)map.get("id") ) );List options = specificationOptionMapper.selectByExample(example);map.put("options
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 根据题目要求,我会用300字来回答html静态网站基于品优购电商购物网站网页设计与实现共计3个页面的细节和流程。 品优购电商购物网站是一个非常流行的电商网站,为了设计和实现该网站的静态页面,我们可以分为三个页面:主页、商品列表页和商品详情页。 在设计主页时,我们需要包含品优购网站的logo、导航栏、搜索栏、轮播图、特色推荐商品等元素。通过HTML和CSS来布局和样式化这些元素,使主页看起来美观且用户友好。另外,我们可以使用JavaScript来实现一些交互功能,如点击导航栏跳转到相应的页面、轮播图自动切换等。 商品列表页是展示不同商品的页面。我们可以使用HTML和CSS来创建一个商品列表的结构,包括商品图片、名称、价格等信息。通过CSS来设置商品列表的样式,使它们形成一整行或一整列排列。最后,我们可以使用JavaScript来实现一些筛选和排序功能,比如根据价格、品牌或其他条件来过滤商品商品详情页是展示特定商品详细信息的页面。我们可以使用HTML和CSS来创建一个包含商品名称、价格、描述、图片等信息的结构。通过CSS来优化布局和样式,使商品详情页面看起来更加美观。此外,我们可以使用JavaScript来实现一些交互功能,比如选择商品数量、加入购物车等。 总结起来,在设计和实现这个静态网站的三个页面时,我们需要运用HTML、CSS和JavaScript的知识。HTML用于创建页面结构,CSS用于样式化页面,JavaScript用于实现交互功能。通过合理地运用这些技术,我们可以设计出一个美观、易用且功能齐全的品优购电商购物网站的静态网站。 ### 回答2: 品优购电商购物网站的静态网站设计与实现共计3个页面。这三个页面分别是主页、商品列表页和商品详情页。 在主页中,我们需要展示品优购电商购物网站的Logo、导航栏、轮播图和推荐商品等内容。通过HTML代码,我们可以创建一个包含这些元素的页面结构,通过CSS样式,我们可以为这些元素设置适当的样式,如颜色、字体大小和边距等。通过JavaScript,我们可以实现轮播图的自动切换、导航栏的下拉菜单以及推荐商品的动态加载等交互功能。 商品列表页显示了品优购网站的各类商品,并提供筛选和排序功能。通过HTML和CSS,我们可以创建一个商品列表的布局,并为每个商品设置适当的样式,如标题、价格和图片等。通过JavaScript,我们可以实现商品的筛选和排序功能,以及翻页和加载更多商品等交互操作。 商品详情页展示了特定商品详细信息和购买选项。通过HTML和CSS,我们可以创建一个商品详情页面的布局,并设置适当的样式,如商品标题、图片和描述等。通过JavaScript,我们可以实现商品数量的增减、加入购物车和立即购买等交互功能。 这三个页面的设计和实现基于HTML、CSS和JavaScript技术,通过合理的页面结构、样式和交互功能,提供给用户一个良好的购物体验。 ### 回答3: 品优购是一家电商购物网站,它的网页设计与实现共计有三个页面,即首页、商品列表页和商品详情页。这些页面是基于HTML、CSS和JavaScript开发的。 1. 首页: 首页是品优购的门面,它需要简洁明了地展示品优购的特色和优势。主要包括顶部导航栏、搜索框、轮播图和商品分类展示。通过HTML和CSS来构建页面的基本结构和样式,并利用JavaScript来实现轮播图的自动切换和商品分类的展开与收起。 2. 商品列表页: 商品列表页用于展示品优购的全部商品,以供用户选择购买。该页面需要有商品的缩略图、名称、价格等基本信息,并且可以根据用户的选择进行排序和筛选。通过HTML和CSS来构建商品列表的布局和样式,并利用JavaScript来实现价格的排序和筛选功能。 3. 商品详情页: 商品详情页用于展示某个具体商品详细信息和购买选项。该页面需要展示商品的大图、名称、价格、描述等详细信息,并提供购买按钮和数量选择框。通过HTML和CSS来构建商品详情页的布局和样式,并利用JavaScript来实现数量的增减和购买按钮的点击事件处理。 这三个页面的设计与实现需要充分考虑用户体验,确保页面的简洁、清晰和易用。同时,还需要注意网页的响应式设计,使其在不同屏幕尺寸下都能良好展示。使用HTML、CSS和JavaScript的组合可以实现丰富的网页交互效果,给用户带来良好的购物体验。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值