簡體   English   中英

將所選數量添加到購物車,而不是僅更新

[英]Add Quantity Selected to Cart Instead of Just Updating

我有一個包含項目和數量選擇表的索引頁面。

在此處輸入圖片說明

該表格適用於創建(也稱為首次點擊)。 問題是,如果我再次單擊它,它只是更新購物車,而不是將該數量添加到line_item 如果這是我唯一的問題,我將可以自己解決。

真正的問題是我還有另一種在結帳前更新的表格。 看起來像這樣:

在此處輸入圖片說明

我希望這是主數量控制,因此,以這種形式進行的操作就是要更新的數量。 但是對於第一個圖像,我希望該數量增加到@line_item的數量中,所以我不能只是創建一個將新數量和舊數量相加的方法,這是我開始做的事情,直到我意識到自己不會無法做到這一點。

我需要在控制器中執行新操作嗎?
解決該問題的方法是什么?

看着你的問題

The problem is, if I click it again, it's just updating the cart instead of adding that quantity to the line_item

問題是您的提交按鈕“ Add to Cart將其帶到購物車創建操作,因此在購物車內創建了新商品

Do I need to make a new action in the controller?

我的回答是。 您需要使用后路由請求進行新操作(以找到該物料) ,然后在該動作中更新其數量。

What would be the work around for this?

如果你看看你的按鈕,或者更確切地說,我應該說的形式為創建一個新的項目,然后它在你的形式,它需要你的方法,你的控制器內的路徑或URL的一部分 如果您更改其網址,則它將轉到您的自定義方法。

固定

您只需要一些js魔術,即可在用戶單擊“添加到購物車”按鈕后動態更改URL或表單。 就像是:

$(document).on("click","your_button_class",function(){
  $(this).closest("your_form_class").attr("action","path_of_new_method");
});

您還必須通過添加一個隱藏字段或其他內容來通過此表單提供商品ID ,然后在具有該ID的控制器方法中找到該商品以更新其數量。

注意:提交表單並創建新項目后,您需要調用此js,否則可能會給您帶來麻煩。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM