2013-07-08 38 views
0

我的網站使用專用的電子商務系統,不幸的是,而他們的支持團隊是非常有幫助的,他們不是特別支持的「自定義代碼」,這樣我需要的代碼。爲什麼我的「添加到購物車」按鈕不起作用?

我正在嘗試配置一個「splash」頁面(在用戶完成訂單前彈出),該頁面讓用戶有機會以「加入購物車」的方式購買我們的T恤衫半價他們從splash頁面中將它添加到他們的購物車中。

我試圖從標準產品頁面將代碼複製,但不幸的是,按鈕不起作用,因爲它應該,而是它只是通過對「#」(可在下面的代碼中可以看出)鏈接。

<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:背後我們的電子商務系統的支持團隊,因爲有送我這一段代碼,以幫助,但我不完全知道如何使用它:

如果你想要更多的控制通過JavaScript可以使用核心車對象,我們還提供>在JavaScript。通過(私人電子商務系統)命名空間的accessable,並且如果您開闢一個(私人電子商務系統)的網站上的控制檯,輸入(私人>電子商務系統),然後回車 事實上,它會返回一個對象給你的是什麼核心部件>系統,我們就在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

你在期待onclick做什麼?據我所見,你是在點擊javascript對象。這對我來說沒有意義。你需要點擊一個函數然後執行一些操作。 –

+0

看起來像模板代碼 – Dale

+0

嗨喬恩和戴爾,感謝您的幫助。對不起,更清晰:)我希望按鈕會在用戶購物車完成訂單之前添加特定產品。 – Dan

回答

1

如果你換出的JavaScript按鈕並沒有腳本的輸入字段更換呢?

<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> 

更新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> 

更新3

要在將T恤添加到購物車時關閉彈出窗口,嘗試放入th在上面的a元素中:

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

嗨喬恩,感謝您的意見,非常感謝。不幸的是,該代碼有一個標籤,但沒有開始標籤,因此該按鈕無法正常工作。你能否建議如何改變它(即:如果/如果開頭需要添加) – Dan

+0

@Dan對不起,我已經刪除了關閉的''標籤 - 它不是必需的。 – Jon

+0

@丹爲你工作? – Jon

相關問題