电商系统常用的产品颜色,尺码选择JS程序实现

本文详细介绍了电商系统中产品颜色和尺码选择功能的JavaScript实现。通过后台生成的产品页面,利用JS动态匹配在售的颜色和尺码,初始化界面并禁用不可选的选项。代码中涉及事件监听、DOM操作以及JSON对象处理,实现用户交互时的选择与反馈更新。
摘要由CSDN通过智能技术生成

一、说业务

 

这两天,一直在处理,日常电商系统的一个功能。

 

即,产品规格选择的。主要包括颜色,尺码。

 

我们主要是做服装。

 

因此,当客人打开我们的某个产品页面。

 

有购物车,及 立即购物的选择,点击时,即显示这个规格窗口。

 

供用户选择:

 

颜色:白,黑

 

尺码: S ,M,L XL

二、说功能细节。

今天我们要说的,就是这个功能 :

 

首先:我们的产品页面是通过后台生成。

 

因此,生成的产品页面如8193238.html的页面:

 

显示的页面效果如下:

 

其中有两样东西:

1.页面显示的规格窗口,以下是HTML代码

 

 

2.在售产品的颜色与尺码(Json对象)

 

现在来场景举例:

 

首先,小A打开产品页面。

 

系统显示产品详情页中,所有的颜色和尺码(这个颜色和尺码是当初建立这个产品时,建立的颜色,尺码,即使后面

 

断码,也全部都会显示出来)

 

不过,这里有个初始化工作,即:

 

我们需要通过一个 

 

for语句,把所有颜色,找出来,并且和当前可售的尺码匹配,如果当前可售的,没有,就显示灰,并不可点击

 

第三、说说代码

代码如下:

 

var theColor = $(":radio[name=colorStandard][checked]").val()

    var theSize = $(":radio[name=sizeStandard][checked]").val()

    if (theColor == undefined || theColor == "")

        theColor = null;

    if (theSize == undefined || theSize == "")

        theSize = null;

 

    var contrlData = getColorSizeItemControls(theColor, theSize);

 

    for (i = 0; i < $("input[name='colorStandard']").length; i++) {

 

 

        if (contrlData.Colors.indexOf($("input[name='colorStandard']")[i].value) <= -1) {

            //$("input[name='colorStandard']")[i].nextSibling.style.display = "none";

 

            $("input[name='colorStandard']")[i].nextSibling.style = "pointer-events: none;"

            $("input[name='colorStandard']")[i].nextSibling.style.opacity = "0.2";

 

        } else {

   

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值