2015-12-22 17 views
0

我有以下jQuery的多個產品變型的下拉

<label>Model</label> 
<select name="option1" id="option1"> 
    <option data-sku="IPH4-RED-ASD" value="iPhone4">iPhone4</option> 
    <option data-sku="IPH5-GREEN-QWE" value="iPhone5">iPhone5</option> 
    <option data-sku="IPH5-BLUE-QWE" value="iPhone5">iPhone5</option> 
    <option data-sku="IPH5-ORANGE-QWE" value="iPhone5">iPhone5</option> 
</select> 

<label>Color</label> 
<select name="option2" id="option2"> 
    <option data-sku="IPH4-RED-ASD" value="Red">Red</option> 
    <option data-sku="IPH5-GREEN-QWE" value="Green">Green</option> 
    <option data-sku="IPH6-BLUE-ZXC" value="Blue">Blue</option> 
    <option data-sku="IPH5-ORANGE-QWE" value="Orange">Orange</option> 
</select> 

<label>Brand</label> 
<select name="option3" id="option3"> 
    <option data-sku="IPH4-RED-ASD" value="ASD">ASD</option> 
    <option data-sku="IPH5-GREEN-QWE" value="QWE">QWE</option> 
    <option data-sku="IPH5-BLUE-ZXC" value="ZXC">ZXC</option> 
</select> 

正如你可以看到iPhone5的顯示出來的模型下拉3倍,因爲它在2點不同的顏色,這使得它作爲2種獨立的產品以獨特的SKU自帶。

當用戶選擇iPhone4時,我已經具備了功能,它會顯示其他變體(如果有)。

然後問題是我不想在下拉菜單中顯示iPhone5 3次,但只有一次。我知道我可以從JSON數組中刪除重複項或者從dom中刪除選項,但是如果變體存在或者價格不同,我需要保留從中獲取細節的sku。

Shopify和Woocommerce具有相同的功能,除了結果不重複,我可以做什麼的任何想法/建議?

我使用jQuery來打印選擇並循環遍歷JSON格式的變體。

謝謝

+0

從JSON中刪除它,並在'option1'中只顯示一次,我想你可以在用戶選擇後從'option2'下拉菜單中獲得SKU! – deepakb

+0

你可以檢查選項是否存在,如果是的話不要將它添加到你的選擇框;) – theblackgigant

+0

@theblackgigant如果我不把它添加到選擇框,那麼我不知道如果iphone5有紅色和品牌的選擇或者如果iphone5紅色缺貨等等... – lesandru

回答

0

如果我得到你的問題正確的話,選項A是 使用串法和匹配數據SKU VA; UE和獲得IPH5字符串,只顯示一個。

選項B是給予禁用標籤,以便用戶不能選擇第二個和第三個iPhone,但可以看到它在那裏。

+0

你有問題的權利,除了我隱藏選項2,如果選項1沒有其他變體,以及選項3,如果選項1或選項2沒有其他變體相關的事實 – lesandru

+0

好的,那麼你可以請修剪json你得到並分組他們。或給重複的殘疾人。你能告訴我你所說的網站嗎?任何鏈接? –