效果如图,选择一个尺码或图片,按第一次时候赋值,按第二次时候取消值,随之效果改变
代码如下:
css文件
- .noselectdiv ??
- { ??
- ????margin-left:12px; ??
- ????cursor:pointer; ??
- ????text-indent:0; ??
- ????float:left; ??
- ????height:20px;?line-height:20px; ??
- ????border:2px?solid?#666; ??
- ????color:Green; ??
- ????} ??
- .selectdiv ??
- { ??
- ????margin-left:12px; ??
- ????cursor:pointer; ??
- ????text-indent:0; ??
- ????height:20px;?line-height:20px; ??
- ????float:left; ??
- ????border:2px?solid?red; ??
- ????color:Green; ??
- ????font-weight:bold; ??
- ????color:red; ??
- ????}??
.noselectdiv
{
margin-left:12px;
cursor:pointer;
text-indent:0;
float:left;
height:20px; line-height:20px;
border:2px solid #666;
color:Green;
}
.selectdiv
{
margin-left:12px;
cursor:pointer;
text-indent:0;
height:20px; line-height:20px;
float:left;
border:2px solid red;
color:Green;
font-weight:bold;
color:red;
}
js文件
- function?checkPcolor(cid)?{ ??
- ???????$("#pcolorshowbox"?+?cid).toggleClass("selectdiv"); ??
- ???????var?hiddenColorValueObject?=?$("#ctl00_cph1_ctrlCheckoutAttributes_hiddenPcolors"); ??
- ???????var?colorValues?=?hiddenColorValueObject.val(); ??
- ???????var?colorValuesArray?=?new?Array(); ??
- ???????//如果是第一次填写颜色?会没有任何值 ??
- ???????if?(colorValues?==?"")?{ ??
- ???????????colorValuesArray.push(cid);?//直接把值写入 ??
- ???????} ??
- ???????else?{ ??
- ???????????colorValuesArray?=?colorValues.split(","); ??
- ???????????//此时肯定有一个颜色?列表显示 ??
- ???????????var?hasSta?=?true; ??
- ???????????for?(i?=?0;?i?<?colorValuesArray.length;?i++)?{ ??
- ???????????????//如果id已经有了说明要取消! ??
- ???????????????if?(cid?==?colorValuesArray[i])?{ ??
- ???????????????????colorValuesArray.splice(i,?1); ??
- ???????????????????hasSta?=?false; ??
- ???????????????????break; ??
- ???????????????} ??
- ???????????} ??
- ???????????if?(hasSta)?{ ??
- ???????????????colorValuesArray.push(cid); ??
- ???????????} ??
- ???????} ??
- ???????var?nowColorValues?=?colorValuesArray.join(","); ??
- ???????hiddenColorValueObject.val(nowColorValues); ??
- ???}??
function checkPcolor(cid) {
$("#pcolorshowbox" + cid).toggleClass("selectdiv");
var hiddenColorValueObject = $("#ctl00_cph1_ctrlCheckoutAttributes_hiddenPcolors");
var colorValues = hiddenColorValueObject.val();
var colorValuesArray = new Array();
//如果是第一次填写颜色 会没有任何值
if (colorValues == "") {
colorValuesArray.push(cid); //直接把值写入
}
else {
colorValuesArray = colorValues.split(",");
//此时肯定有一个颜色 列表显示
var hasSta = true;
for (i = 0; i < colorValuesArray.length; i++) {
//如果id已经有了说明要取消!
if (cid == colorValuesArray[i]) {
colorValuesArray.splice(i, 1);
hasSta = false;
break;
}
}
if (hasSta) {
colorValuesArray.push(cid);
}
}
var nowColorValues = colorValuesArray.join(",");
hiddenColorValueObject.val(nowColorValues);
}
html代码
- <DIV?id="psizeshowbox<%=size.ProductSizeID?%>"?class=noselectdiv?onclick="checkPsize('<%=size.ProductSizeID?%>')">?<%=size.PrductSizeName%>?</DIV>??
- ??
- <ASP:HIDDENFIELD?id=hiddenPsizes?runat="server"?/>??
- <ASP:HIDDENFIELD?id=hiddenPcolors?runat="server"?/>??
?<%=size.PrductSizeName%>?