2015-12-29 28 views
0

我對此非常接近,但我無法獲得正確的語法。我一直在爲這件事而煩惱,好幾天。基本上我有一個賀卡信息,我希望消息被客戶填寫在結賬頁面(cart.liquid)上的每個賀卡上,並且我需要爲每個索引更改屬性名稱。因此,我將索引添加到每個屬性名稱,但無濟於事。出於測試目的,這是一個基本的輸入字段:Shopify購物車中的動態屬性名稱

<p class="cart-attribute__field" style="min-width:300px;"> 
     <label for="to{{ forloop.index }}">To:</label> 
     <input class="checkMe" id="to{{ forloop.index }}" type="text" name="attributes[To{{ forloop.index }}]" maxlength="40" data-stk="{{item.id}}" value="{{ cart.attributes['To'+forloop.index] }}" > 

    </p> 

而且它的這部分(值= 「{{cart.attributes [ '要' + forloop.index]}}」),它給我的麻煩。

回答

1

您不能在液體代碼中使用'+'運算符來追加。試試這個:

{% assign cart_attr = 'To' | append: forloop.index %} 
<p class="cart-attribute__field" style="min-width:300px;"> 
<label for="to{{ forloop.index }}">To:</label> 
<input class="checkMe" id="to{{ forloop.index }}" type="text" name="attributes[To{{ forloop.index }}]" maxlength="40" data-stk="{{item.id}}" value="{{ cart.attributes[cart_attr] }}" > 
</p> 

注意:即興按照要求。

+0

沒錯描述的shopify專家回來給我,這就是答案。感謝您的回覆! – Luke

+0

偶然你知道如何清除屬性的屬性嗎?即使從購物車中刪除某件商品,也似乎將信息保留在管理員部分中。 – Luke

+0

JavaScript不起作用? – HymnZ

0
+0

訂單項在客戶的結帳頁面中不可編輯,與我的商店一樣,這是必須的(賀卡信息)。這讓我的顧客頭痛,不得不刪除一件物品,然後再讀。因此,購物車的屬性是我的救恩。 – Luke

+0

並不意味着結帳,而是在實際產品頁面上,他們首先將禮品卡添加到購物車。 – bknights

+0

是的,我知道你的意思。我在同一頁面上。 – Luke