【发布时间】:2020-06-18 09:35:34
【问题描述】:
我遇到了下拉列表中出现双值的问题,这与我想要的相反。
我有一个带有下拉菜单的购物车,用户可以从中选择一个cakesize,它的价值是价格。
我的设置是将购物车存储在浏览器的会话中,以便存储他选择的值。
我的问题是,当我加载页面时,选定的cakesize 出现两次,在 option selected 和列表上。
<select name="cakesize" class="custom-select cakesize">
<option selected value="<%=cake.currentPrice%>"><%=cake.currentCakeSize %></option>
<option value="<%=cake.item.price['1000'] %>">1kg</option>
<option value="<%=cake.item.price['1500'] %>">1.5kg</option>
<option value="<%=cake.item.price['2000'] %>">2kg</option>
<option value="<%=cake.item.price['2500'] %>">2.5kg</option>
<option value="<%=cake.item.price['3000'] %>">3kg</option>
<option value="<%=cake.item.price['3500'] %>">3.5kg</option>
<option value="<%=cake.item.price['4000'] %>">4kg</option>
<option value="<%=cake.item.price['4500'] %>">4.5kg</option>
<option value="<%=cake.item.price['5000'] %>">5kg</option>
</select>
这样下去可以吗?
【问题讨论】:
-
您的代码无法解决您的问题,请分享您的网站如何存储和检索会话的更多详细信息。
-
一种解决方案可能是在每个
<option>周围添加一个if块,如果值与所选大小匹配则隐藏它。像这样的东西:if cake.item.price['1000'] !== cake.currentPrice -
@SonNguyen 谢谢。这似乎是正确的方式
标签: javascript html ejs