고수님들, 제이쿼리 - 카트 담기 질문입니다.!!
관련링크
본문
안녕하세요.
회사 프로젝트로, 미니 쇼핑몰을 만드는 중입니다.
내부 엔진은 영카트인데,
일단 레이아웃을 만들고 있구요
http://xn--w80by1ax26alkcb1d.com/demo/cart3.html
여기가 작업주소인데
현재는 add to Basket ,버튼 클릭하면
오른상단 부분 장바구니에
현재는 내가 몇개를 담았나만 체크가 되는데요
제가 하고싶은건
여기에 name=item_no[] 인
값을 클릭할때마다 오른상단 해당 input에 배열로 넣고싶어요
즉.. item_no[] 의 value가 각각 1,2,3,4 면..
1,2,3,4 로 오른 상단 장바구니 내 <input type="hidden" id="item" name="item"> 이 곳에 값을 넣고 싶습니다.
장바구니 넣는 소스는
// Add Items To Basket
function addToBasket() {
counter++;
$('#item').val('1'); ==> item_no[] 값을 #item에 넣으려면.. 여기를 어떻게 바꿔야할까요? 지금은 그냥 값만 넣어본 상태...
$(".counter").html(counter).animate({
'opacity': '0' },
300, function () {
$(".counter").delay(300).animate({
'opacity': '1' });
});
}
이건데요.
제가 원하는대로 되려면, 어떻게 수정을 해야할까요?
질문하기가 좀 어려울까봐, 일부러 소스 url 전체를 다 공개합니다.
어차피 html+jquery라서....
고수분들 도와주세요. ㅠ
답변 1
응용해보세요
#item 의 value를 읽어서 쉼표로 배열을 만든다음
새로 추가한 상품번호(아래 예제는 timestamp)를 배열에 추가한 다음
다시 쉼표로 묶어서 value에 넣어주는건데
중복제거 같은 건 따로 해야겠지요?
<input type="text" id="item" style="width: 100%;">
<button type="button" id="add">추가</button>
<script>
$('#add').on('click', function() {
var $item = $('#item'),
value = $item.val().trim();
$item.val(function() {
var arr = value ? value.split(',') : [];
arr.push(new Date().getTime());
return arr.join(',');
});
});
</script>