|
|
@@ -40,29 +40,26 @@
|
|
|
<!-- 세트상품 옵션 -->
|
|
|
<th:block th:if="${setType.equals(cart.goodsType)}">
|
|
|
<div class="opt_select">
|
|
|
+ <!-- 컬러 변경시 만들어줄 size option -->
|
|
|
+ <span style="display:none;" th:each="color, index : ${comp.cartColorList}">
|
|
|
+ <span th:classappend="|color_${color.goodsCd}_${color.optCd1}|">
|
|
|
+ <th:block th:each="size, i : ${color.cartSizeList}">
|
|
|
+ <th:block th:if="${color.optCd1.equals(size.optCd1)}">
|
|
|
+ <li th:classappend="${i.index == 0} ? selected" th:data="${comp.cartDtlSq}" th:optCd="${size.optCd}" th:value="${size.optCd}" th:text="${size.optCd2}" th:aria-disabled="${color.soldoutYn.equals('Y') or size.soldoutYn.equals('Y') ? true : false}"></li>
|
|
|
+ </th:block>
|
|
|
+ </th:block>
|
|
|
+ </span>
|
|
|
+ </span>
|
|
|
+
|
|
|
<div class="opt_header">
|
|
|
<span class="title" th:text="${comp.goodsNm}"></span>
|
|
|
</div>
|
|
|
<div class="opt_header">
|
|
|
<span class="title">옵션1</span>
|
|
|
<th:block th:each="color, index : ${comp.cartColorList}" th:if="${color.cartColorNm != null}">
|
|
|
- <span class="text" th:text="${color.cartColorNm}"></span>
|
|
|
+ <span class="text" th:classappend="|chooseColorNm_${comp.goodsCd}|" th:text="${color.cartColorNm}"></span>
|
|
|
</th:block>
|
|
|
</div>
|
|
|
-
|
|
|
- <!-- 컬러 변경시 만들어줄 size option -->
|
|
|
- <th:block th:each="color, index : ${comp.cartColorList}">
|
|
|
- <span style="display:none;">
|
|
|
- <select th:classappend="|color_${color.goodsCd}_${color.optCd1}|">
|
|
|
- <th:block th:each="size, i : ${color.cartSizeList}">
|
|
|
- <th:block th:if="${color.optCd1.equals(size.optCd1)}">
|
|
|
- <option th:value="${size.optCd}" th:text="${size.optCd2}"></option>
|
|
|
- </th:block>
|
|
|
- </th:block>
|
|
|
- </select>
|
|
|
- </span>
|
|
|
- </th:block>
|
|
|
-
|
|
|
<form class="form_wrap">
|
|
|
<div class="form_field">
|
|
|
<div class="select_custom item_opt1 setColorSelect">
|
|
|
@@ -70,13 +67,10 @@
|
|
|
<th:block th:each="color, index : ${comp.cartColorList}" th:if="${color.cartColorNm != null}">
|
|
|
<div class="select" th:text="${color.cartColorNm}"></div>
|
|
|
</th:block>
|
|
|
- <ul class="list">
|
|
|
- <!-- 선택처리 class="selected" / 선택불가 aria-disabled="true" 추가 -->
|
|
|
+ <ul class="list" th:data="${comp.goodsCd}">
|
|
|
<th:block th:each="color, index : ${comp.cartColorList}">
|
|
|
- <li th:classappend="${color.cartColorNm != null} ? selected" th:text="${color.colorNm}"></li>
|
|
|
+ <li th:classappend="${color.cartColorNm != null} ? 'selected addNewScombo'" th:data="${color.optCd1}" th:text="${color.colorNm}" th:aria-disabled="${color.soldoutYn.equals('Y') ? true : false}"></li>
|
|
|
</th:block>
|
|
|
- <!--<li class="selected">카키/95</li>
|
|
|
- <li aria-disabled="true">옐로우/105</li>-->
|
|
|
</ul>
|
|
|
</div>
|
|
|
</div>
|
|
|
@@ -94,16 +88,16 @@
|
|
|
</div>
|
|
|
<form class="form_wrap">
|
|
|
<div class="form_field">
|
|
|
- <div class="select_custom item_opt2 setSizeSelect">
|
|
|
+ <div class="select_custom item_opt2 setOption">
|
|
|
<div class="combo">
|
|
|
<th:block th:each="color, index : ${comp.cartColorList}" th:if="${color.cartColorNm != null}">
|
|
|
<th:block th:each="size, i : ${color.cartSizeList}" th:if="${size.cartOptCd != null}">
|
|
|
- <div class="select" th:classappend="|size_${comp.goodsCd}|" th:text="${size.optCd2}" th:data="${color.goodsCd}"></div>
|
|
|
+ <div class="select" th:classappend="|size_${comp.goodsCd}_size_nm addNewScombo|" th:text="${size.optCd2}" th:data="${color.goodsCd}"></div>
|
|
|
</th:block>
|
|
|
- <ul class="list">
|
|
|
+ <ul class="list setSizeSelect" th:classappend="|size_${comp.goodsCd}|">
|
|
|
<th:block th:each="size, i : ${color.cartSizeList}" th:if="${color.optCd1.equals(size.optCd1)}">
|
|
|
<!-- 선택처리 class="selected" / 선택불가 aria-disabled="true" 추가 -->
|
|
|
- <li th:classappend="${size.cartOptCd != null} ? selected" th:data="${comp.cartDtlSq}" th:optCd="${size.optCd}" th:value="${size.optCd}" th:text="${size.optCd2}"></li>
|
|
|
+ <li th:classappend="${size.cartOptCd != null} ? selected" th:data="${comp.cartDtlSq}" th:optCd="${size.optCd}" th:value="${size.optCd}" th:text="${size.optCd2}" th:aria-disabled="${color.soldoutYn.equals('Y') or size.soldoutYn.equals('Y') ? true : false}"></li>
|
|
|
<!--<li class="selected">블랙/95</li>
|
|
|
<li aria-disabled="true">블랙/105</li>-->
|
|
|
</th:block>
|
|
|
@@ -157,26 +151,23 @@
|
|
|
<!-- 입점업체 -->
|
|
|
<th:block th:if="${!setType.equals(cart.goodsType) and 'N'.equals(cart.selfGoodsYn)}">
|
|
|
<div class="opt_select">
|
|
|
+ <!-- 컬러 변경시 만들어줄 size option -->
|
|
|
+ <span style="display:none;" th:each="color, index : ${comp.cartColorList}">
|
|
|
+ <span th:classappend="|color_${color.goodsCd}_${color.optCd1}|">
|
|
|
+ <th:block th:each="size, i : ${color.cartSizeList}">
|
|
|
+ <th:block th:if="${color.optCd1.equals(size.optCd1)}">
|
|
|
+ <li th:classappend="${i.index == 0} ? selected" th:data="${cart.cartDtlSq}" th:optCd="${size.optCd}" th:value="${size.optCd}" th:text="${size.optCd2}" th:aria-disabled="${color.soldoutYn.equals('Y') or size.soldoutYn.equals('Y') ? true : false}"></li>
|
|
|
+ </th:block>
|
|
|
+ </th:block>
|
|
|
+ </span>
|
|
|
+ </span>
|
|
|
+
|
|
|
<div class="opt_header">
|
|
|
<span class="title">옵션1</span>
|
|
|
<th:block th:each="color, index : ${comp.cartColorList}" th:if="${color.cartColorNm != null}">
|
|
|
- <span class="text" th:text="${color.cartColorNm}"></span>
|
|
|
+ <span class="text" th:classappend="|chooseColorNm_${cart.goodsCd}|" th:text="${color.cartColorNm}"></span>
|
|
|
</th:block>
|
|
|
</div>
|
|
|
-
|
|
|
- <!-- 컬러 변경시 만들어줄 size option -->
|
|
|
- <th:block th:each="color, index : ${comp.cartColorList}">
|
|
|
- <span style="display:none;">
|
|
|
- <select th:classappend="|color_${color.goodsCd}_${color.optCd1}|">
|
|
|
- <th:block th:each="size, i : ${color.cartSizeList}">
|
|
|
- <th:block th:if="${color.optCd1.equals(size.optCd1)}">
|
|
|
- <option th:value="${size.optCd}" th:text="${size.optCd2}"></option>
|
|
|
- </th:block>
|
|
|
- </th:block>
|
|
|
- </select>
|
|
|
- </span>
|
|
|
- </th:block>
|
|
|
-
|
|
|
<form class="form_wrap">
|
|
|
<div class="form_field">
|
|
|
<div class="select_custom item_opt1 setColorSelect">
|
|
|
@@ -184,13 +175,10 @@
|
|
|
<th:block th:each="color, index : ${comp.cartColorList}" th:if="${color.cartColorNm != null}">
|
|
|
<div class="select" th:text="${color.cartColorNm}"></div>
|
|
|
</th:block>
|
|
|
- <ul class="list">
|
|
|
- <!-- 선택처리 class="selected" / 선택불가 aria-disabled="true" 추가 -->
|
|
|
+ <ul class="list" th:data="${cart.goodsCd}">
|
|
|
<th:block th:each="color, index : ${comp.cartColorList}">
|
|
|
- <li th:classappend="${color.cartColorNm != null} ? selected" th:text="${color.colorNm}"></li>
|
|
|
+ <li th:classappend="${color.cartColorNm != null} ? 'selected addNewScombo'" th:data="${color.optCd1}" th:text="${color.colorNm}" th:aria-disabled="${color.soldoutYn.equals('Y') ? true : false}"></li>
|
|
|
</th:block>
|
|
|
- <!--<li class="selected">카키/95</li>
|
|
|
- <li aria-disabled="true">옐로우/105</li>-->
|
|
|
</ul>
|
|
|
</div>
|
|
|
</div>
|
|
|
@@ -208,18 +196,16 @@
|
|
|
</div>
|
|
|
<form class="form_wrap">
|
|
|
<div class="form_field">
|
|
|
- <div class="select_custom item_opt2 setSizeSelect">
|
|
|
+ <div class="select_custom item_opt2 setOption">
|
|
|
<div class="combo">
|
|
|
<th:block th:each="color, index : ${comp.cartColorList}" th:if="${color.cartColorNm != null}">
|
|
|
<th:block th:each="size, i : ${color.cartSizeList}" th:if="${size.cartOptCd != null}">
|
|
|
- <div class="select" th:classappend="|size_${comp.goodsCd}|" th:text="${size.optCd2}" th:data="${color.goodsCd}"></div>
|
|
|
+ <div class="select" th:classappend="|size_${cart.goodsCd}_size_nm addNewScombo|" th:text="${size.optCd2}" th:data="${color.goodsCd}"></div>
|
|
|
+ <input type="hidden" th:if="${size.cartDtlSq > 0}" class="cartDtlSq" th:value="${size.cartDtlSq}" />
|
|
|
</th:block>
|
|
|
- <ul class="list">
|
|
|
+ <ul class="list setSizeSelect" th:classappend="|size_${cart.goodsCd}|">
|
|
|
<th:block th:each="size, i : ${color.cartSizeList}" th:if="${color.optCd1.equals(size.optCd1)}">
|
|
|
- <!-- 선택처리 class="selected" / 선택불가 aria-disabled="true" 추가 -->
|
|
|
- <li th:classappend="${size.cartOptCd != null} ? selected" th:data="${color.cartDtlSq}" th:optCd="${size.optCd}" th:value="${size.optCd}" th:text="${size.optCd2}"></li>
|
|
|
- <!--<li class="selected">블랙/95</li>
|
|
|
- <li aria-disabled="true">블랙/105</li>-->
|
|
|
+ <li th:classappend="${size.cartOptCd != null} ? selected" th:data="${size.cartDtlSq}" th:optCd="${size.optCd}" th:value="${size.optCd}" th:text="${size.optCd2}" th:aria-disabled="${color.soldoutYn.equals('Y') or size.soldoutYn.equals('Y') ? true : false}"></li>
|
|
|
</th:block>
|
|
|
</ul>
|
|
|
</th:block>
|
|
|
@@ -251,7 +237,7 @@
|
|
|
<script th:inline="javascript">
|
|
|
$(document).ready(function() {
|
|
|
$(".select_custom").each(function() {
|
|
|
- new sCombo(this);
|
|
|
+ new sCombo($(this));
|
|
|
});
|
|
|
});
|
|
|
|
|
|
@@ -262,11 +248,33 @@
|
|
|
$('.optModify_pop .number_count .minus').addClass('min_val');
|
|
|
}
|
|
|
|
|
|
- // 세트상품 컬러 변경시
|
|
|
- $(".setColorSelect").on("change", function(e) {
|
|
|
- let goodsCd = $(this).find("option:checked").attr("data");
|
|
|
+ // 세트상품, 입점업체 상품 컬러 변경시
|
|
|
+ $(".setColorSelect > .combo > .list li").on("click", function(e) {
|
|
|
+ let goodsCd = $(this).parent().attr("data");
|
|
|
+ let firstSize = "";
|
|
|
+
|
|
|
+ $(".chooseColorNm_" + goodsCd).text($(this).text());
|
|
|
+
|
|
|
$(".setOption .size_" + goodsCd).html("");
|
|
|
- $(".setOption .size_" + goodsCd).html($(".color_" + goodsCd + "_" + $(this).val()).html());
|
|
|
+ $(".setOption .size_" + goodsCd).html($(".color_" + goodsCd + "_" + $(this).attr("data")).html());
|
|
|
+
|
|
|
+ $(".setOption .size_" + goodsCd + " li").each(function() {
|
|
|
+ if($(this).hasClass("selected")) {
|
|
|
+ firstSize = $(this).text();
|
|
|
+ }
|
|
|
+ });
|
|
|
+
|
|
|
+ $(".setOption .size_" + goodsCd + "_size_nm").text(firstSize);
|
|
|
+ $(".setOption .size_" + goodsCd + "_size_nm").parent().parent().parent().parent().parent().find(".opt_header .text").text(firstSize);
|
|
|
+ //if(!$(this).hasClass("addNewScombo")) {
|
|
|
+ //new sCombo($(".setOption .size_" + goodsCd).parent().parent());
|
|
|
+ // $(this).addClass("addNewScombo");
|
|
|
+ //}
|
|
|
+ });
|
|
|
+
|
|
|
+ // 세트상품, 입점업체 상품 사이즈 변경시
|
|
|
+ $(".setOption > .combo > .list li").on("click", function() {
|
|
|
+ $(this).parent().parent().parent().parent().parent().parent().find(".opt_header .text").text($(this).text());
|
|
|
});
|
|
|
|
|
|
// 자사 일반 상품 컬러 선택시
|
|
|
@@ -315,13 +323,13 @@
|
|
|
|
|
|
if(cart.goodsType == "G056_S") {
|
|
|
$(".setSizeSelect").each(function() {
|
|
|
- $(this).find("ul.list > li").each(function() {
|
|
|
+ $(this).find("li").each(function() {
|
|
|
if($(this).hasClass("selected")) {
|
|
|
optCds.push($(this).attr("optCd"));
|
|
|
cartDtlSqArr.push($(this).attr("data"));
|
|
|
}
|
|
|
});
|
|
|
- itemCds.push($(this).find("div.select").attr("data"));
|
|
|
+ itemCds.push($(this).parent().find("div.select").attr("data"));
|
|
|
});
|
|
|
|
|
|
data = {
|
|
|
@@ -334,6 +342,11 @@
|
|
|
, goodsQty : $("input[name=goodsQty]").val()
|
|
|
}
|
|
|
} else if(cart.goodsType != "G056_S" && cart.selfGoodsYn == "Y") {
|
|
|
+ if($(".selfGoodsSize").find("input[name=rdi-optsize]:checked").length < 1) {
|
|
|
+ mcxDialog.alert("옵션을 선택해 주세요.");
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+
|
|
|
optCds.push($(".selfGoodsSize").find("input[name=rdi-optsize]:checked").val());
|
|
|
itemCds.push(cart.goodsCd);
|
|
|
$(".selfGoodsColorSelect").each(function() {
|
|
|
@@ -354,11 +367,13 @@
|
|
|
} else {
|
|
|
// optCds.push($(".selfGoodsColor").val());
|
|
|
itemCds.push(cart.goodsCd);
|
|
|
- $(".setSizeSelect .selected").each(function() {
|
|
|
- if($(this).attr("data") > 0) {
|
|
|
- cartDtlSqArr.push($(this).attr("data"));
|
|
|
- optCds.push($(this).attr("optCd"));
|
|
|
- }
|
|
|
+ $(".setSizeSelect").each(function() {
|
|
|
+ $(this).find("li").each(function() {
|
|
|
+ if($(this).hasClass("selected")) {
|
|
|
+ optCds.push($(this).attr("optCd"));
|
|
|
+ cartDtlSqArr.push($(this).attr("data"));
|
|
|
+ }
|
|
|
+ });
|
|
|
});
|
|
|
|
|
|
data = {
|
|
|
@@ -371,7 +386,7 @@
|
|
|
, goodsQty : $("input[name=goodsQty]").val()
|
|
|
}
|
|
|
}
|
|
|
-
|
|
|
+ alert(JSON.stringify(data));
|
|
|
$.ajax( {
|
|
|
type: "POST",
|
|
|
url : '/cart/change/option',
|
|
|
@@ -384,8 +399,10 @@
|
|
|
success : function(result) {
|
|
|
mcxDialog.alert(result.message);
|
|
|
$(".closeCartOptionModal").trigger("click");
|
|
|
- let data = {shotDelvUseYn : $("input[name=shotDelvUseYn]:checked").val()};
|
|
|
- getCartList(data);
|
|
|
+ if(result.status == "SUCCESS") {
|
|
|
+ let data = {shotDelvUseYn : $("input[name=shotDelvUseYn]:checked").val()};
|
|
|
+ getCartList(data);
|
|
|
+ }
|
|
|
}
|
|
|
});
|
|
|
}
|