2013-03-07 87 views
1

請幫助。我試圖在shopify之外整合shopifys購物車。基本上我需要提交一份表格並避免重定向,這樣我就可以讓客戶在繼續結帳之前添加他想要的所有物品,而不是一個。停止表單操作重定向或重定向的href

我一直在試圖兩種方法:

使用只是一個鏈接

第一種方法:

<a href="http://statevintage.myshopify.com/cart/add" onclick="var f = document.createElement('form'); f.style.display = 'none'; this.parentNode.appendChild(f); f.method = 'POST'; f.action = this.href; var v = document.createElement('input'); v.setAttribute('type', 'hidden'); v.setAttribute('name', 'id'); v.setAttribute('value', '281514140'); f.appendChild(v); var r = document.createElement('input'); r.setAttribute('type', 'hidden'); r.setAttribute('name', 'return_to'); r.setAttribute('value', 'back'); f.appendChild(r); f.submit(); return false;">BUY NOW</a> 

第二種方法使用表單提交用的return_to:

<form action="http://statevintage.myshopify.com/cart/add" method="post"> 
<input type="hidden" name="id" value="281514140" /> 
<input type="hidden" name="return_to" value="back" /> 
<input type="submit" value="BUY NOW" /> 
</form> 

不管我做什麼即使使用返回假腳本,我仍然會被髮送到結帳!

這傢伙是使用相同的表單功能,只需用數量選項,http://sageinvoices.co.uk/但由於某種原因,它從來沒有離開他的網站,直到你真正結賬。這應該是因爲

<input type="hidden" name="return_to" value="back" /> 

我已經關注了每個維基,我可以找到,我只是無法停止窗體重定向到我的結帳頁面。我計劃生產購物車數量和物品顯示,然後允許用戶在他們想要的時間結賬。另外我無法爲我的客戶更換平臺!它必須爲shopify工作。此外,我不能使用他們的應用程序或iframe方法。此網站必須跨瀏覽器兼容並且速度很快。

+0

你說你需要它在shopify之外工作,但是你的兩個例子明確地指向了myshopify.com域。如果你想讓它在你的網站上運行,你需要編寫一些代碼來處理shopify的行爲 - 就像你的示例站點(sageinvoices.co.uk)一樣。 – ethorn10 2013-03-07 02:16:56

+0

是的,他們確實指出了這一點。技術上他的網站也是如此。除了這一個http://11heavens.com/testing-shopify-add-to-cart-functionality-from-another-website-while-staying-put#add-to-cart-form 我已經做了一個whois,他只是改變了dns ......我也可以做statevintage.com。 Shopify在其設置中提供此功能。我已經嘗試過兩個網址。它沒有什麼不同。結帳上面的其他鏈接,網址是theirshop.myshopify.com,它工作正常! 我不想使用或創建shopify主題時,沒有必要!他使用該網站進行跟蹤。 – 2013-03-07 02:29:03

+0

如果你真的花時間把它添加到購物車結賬,然後從http://sageinvoices.co.uk你會看到它只是引導一步以後shopify不是他自己結賬。他只是掩蓋了網址。這是我試圖發生的事情。然後我會使用一個框架來顯示購物車數量,我已經成功地處理了這些數量。表單確實將項目添加到我的購物車。我無法停止重定向。我希望用戶能夠在他們認爲必要時結賬。 – 2013-03-07 02:36:22

回答

0

如果f.submit()形式,它做什麼,它說:提交表單;-)

它可以防止默認使用提交行爲,例如jQuery的:

$('#target').submit(function() { 
    alert('Handler for .submit() called.'); 
    return false; 
}); 
+0

仍然使用上面的代碼重定向。這就是令我困惑的是我試過... f.submit();返回false;「>在衆多方法中的任何其他的想法 – 2013-03-08 01:17:40

+0

在www.jsfiddle.net我得到有效的代碼,但我看到的。{」錯誤「:‘請使用POST請求’}此外我不是被重定向那裏。 – 2013-03-08 01:18:43