2013-07-08 5 views
0

내 웹 사이트는 비공개 전자 상거래 시스템을 사용합니다. 유감스럽게도 지원 팀이 매우 유용하지만 필자가 요구하는 코드 인 '맞춤 코드'를 특별히 지원하지는 않습니다."장바구니에 추가"버튼이 작동하지 않는 이유는 무엇입니까?

사용자가 주문을 완료하기 전에 팝업되는 '스플래시'페이지를 구성하려고합니다. 사용자가 T 셔츠 중 절반 가격을 "장바구니에 추가"할 수있는 기회를 제공합니다 스플래시 페이지에서 장바구니에 추가 할 수 있습니다.

표준 제품 페이지에서 코드 복사를 시도했지만 불행히도 단추가 제대로 작동하지 않으며 대신 '#'(아래 코드에서 볼 수 있음)로 연결됩니다.

<form action="includes/cart/add_to_cart.inc.php" method="get" name="addcartform" id="addcartform" onsubmit="return false;"> 
<!-- Important hidden inputs --> 
<input type="hidden" id="js" name="js" value="false" /> 
<input type="hidden" id="product_id" name="product_id" value="{product:id}" /> 
<a id="add_to_cart" style="display:none;" href="#" onclick="{product:add_to_cart_js}" class="generated_button" title="Add To Cart" > 
<img src="images/icons/cart_add.png" align="absmiddle" /> 
<span> Add To Cart </span> </a> 
<noscript> 
<!-- non javascript --> 
<input class="generated_button" type="submit" value="Add To Cart" name="submit" id="cart_submit" /> 
</noscript> 

의 코드를 넣어 후, 나는 (이 표시되도록) "인라인 블록"에 링크의 "디스플레이"로 변경하고, 나는 또한 사용자가 원하는 제품의 ID에 퍼팅 시도 여기에 자신의 장바구니에 추가 :

id="product_id" name="product_id" value="{product:id}" 

불행하게도이 중 어느 것도 작동하지 않았다, 나는 내가 필요로하는 모든 파일에 대한 완전한 (또는 쉽게) 액세스를 해달라고, 나는이 점점 어떤 도움을 주셔서 감사합니다 정말 것 하나가 해결되었습니다! 사전에

감사합니다, 댄

UPDATE : 우리의 전자 상거래 시스템 뒤에 지원 팀에 나에게 도움이 코드 조각을 보내,하지만 난 그것을 사용하는 방법을 완전히 확실하지 않다 때문에이 있습니다

자바 스크립트를 통해 더 많은 제어권을 원한다면 자바 스크립트에서 사용할 수있는 코어 Cart 객체를 사용할 수 있습니다. (개인 전자 상거래 시스템) 네임 스페이스를 통해 액세스 할 수 있으며 사실 (개인 전자 상거래 시스템) 사이트에서 콘솔을 열고 유형 (개인> 전자 상거래 시스템)을 입력하면 해당 개체를 당신에게 반환합니다. 우리가 지금까지 javascript에서 바로 사용할 수 있도록하는 핵심> 시스템의 부분 (이것은 시간으로 증가합니다). (개인 전자 상거래 시스템) .Cart 개체에는 여기에서 사용할 수있는 하위 addItem() 메서드/함수가 있습니다.

제품 ID를 전달하여 장바구니에 추가 할 수 있습니다 (예 : id # 52의 제품 추가) Cart.addItem (52); 아니면이 전체 옵션과 같이 전달할 수 : 그들이 단추 또는 링크를 추가하면

Cart.addItem({ 
productId: 52, 
qty: 1, 
options: {}, 
wishlistId: 0, 
extraData: "Some detail i want to show to the user" 
}, function() { 
console.log('This is the callback for when its complete!'); 
}); 

그래서, 그들은, 예를 그 코드를 실행하는 데 그 버튼의 클릭에 설정 jQuery를 사용할 수 있습니다

jQuery(function ($) { 
$('.some-button').on('click', function() { 
    Cart.addItem(52); 
    return false; 
}); 
}); 
+0

무엇을 할 예정입니까? 내가 볼 수있는 한, 자바 스크립트 개체를 클릭하면됩니다. 나에게 어떤 말이 말이되지 않습니다. 클릭 한 다음에 뭔가를하는 함수를 실행해야합니다. –

+0

템플릿 코드 – Dale

+0

처럼 보입니다. Jon and Dale 님, 도와 주셔서 감사합니다. 미안합니다. 분명히 말하지 않아서 죄송합니다. 주문을 완료하기 전에 단추가 특정 제품을 사용자 카트에 추가하기를 바랍니다. – Dan

답변

1

당신이 자바 스크립트 버튼을 교체하고, 노 스크립트 입력 필드로 교체하면?

<form action="includes/cart/add_to_cart.inc.php" method="get" name="addcartform" id="addcartform" onsubmit="return false;"> 
<!-- Important hidden inputs --> 
<input type="hidden" id="js" name="js" value="false" /> 
<input type="hidden" id="product_id" name="product_id" value="{product:id}" /> 
<input class="generated_button" type="submit" value="Add To Cart" name="submit" id="cart_submit" /> 
<img src="images/icons/cart_add.png" align="absmiddle" /> 
<span> Add To Cart </span> 
</form> 

당신은 양식 필드 그것이 바로보고하려면 "장바구니에 추가"라는 <span>을 스타일 다시해야 할 수도 있습니다 ...

UPDATE : 지원 팀이 제공 한 정보를 감안할 때

, 위의 대신에 형태, 귀하의 "시작 페이지"에서 이것을 넣어보십시오.

<div> 
<script> 
function addTshirtToCart(){ 
    /* Swap out the 34 for the actual product ID of the tshirt you want to 
     add to the basket */ 
    Cart.addItem(34); 
    // You might also want some code here to close the "splash page" 
    return false; 
} 
</script> 
<a href="#" id="add_to_cart" onclick="return addTshirtToCart();"> 
    <img src="images/icons/cart_add.png" align="absmiddle" /> 
    <span> Add To Cart </span> 
</a> 
</div> 

UPDATE 2 :

내 두번째 대답에서 기존 div를 교체하고이있는 그것을 대체 나를 위해 작동합니다

<form action="includes/cart/add_to_cart.inc.php" method="get" name="addcartform" id="addcartform" onsubmit="return false;"> 
    <input type="hidden" id="js" name="js" value="false"> 
    <input type="hidden" id="product_id" name="product_id" value="1618"> 

    <a id="add_to_cart" style="" href="#" onclick="update_cart_content(); return false;" class="generated_button" title="Add To Cart"> 
    <img src="images/icons/cart_add.png" align="absmiddle"> 
    <span> Add To Cart </span> </a> 
    <noscript> 
     <input class="generated_button" type="submit" value="Add To Cart" name="submit" id="cart_submit"/> 
    </noscript> 
</form> 

UPDATE 3

으로 T 셔츠를 장바구니에 추가 할 때 팝업을 닫으려면 th 위의 요소는 a입니다.

onclick="update_cart_content(); spashBox.close(); return false;" 
+0

안녕하세요, 귀하의 의견을 보내 주셔서 감사합니다. 불행히도 해당 코드에는 태그가 있지만 시작 태그가 없으므로 버튼이 제대로 작동하지 않습니다. 그것을 바꾸는 방법을 조언 해 주실 수 있습니까? (예 : 어디에서/이 필요합니까?) – Dan

+0

@Dan 죄송합니다. 닫히는 ''태그를 제거했습니다. 필요하지 않았습니다. – Jon

+0

@ Dan이 당신을 위해 그 일을 했습니까? – Jon

관련 문제