在购物车网页中我有这个列表视图来显示购物车中的商品:
<asp:ListView ID="List" runat="server" DataKeyNames="ID">
<table class="tbl">
<tr>
<td class="one">
<h4><%# Eval("ID")%></h4>
</td>
<td class="two">
<h4><%# Eval("Name")%></h4>
</td>
<td class="fone"><%# Eval("Total")%></td>
<td>
<asp:DropDownList runat="server" CssClass='drop' SelectedValue='<%# Eval("Qty")%>'>
<asp:ListItem value="1">1</asp:ListItem>
<asp:ListItem value="2">2</asp:ListItem>
<asp:ListItem value="3">3</asp:ListItem>
<asp:ListItem value="4">4</asp:ListItem>
</asp:DropDownList>
</td>
<td class="ffour"><%# Eval("Price")%></td>
</tr>
</table>
项目从cookie中检索。当用户将项目添加到购物车时,项目已添加到此列表视图中。 我已经编写了jquery代码,当用户更改一个项目的数量时,总价值会自动更改。
$('.drop').on('change', function () {
var tr = $(this).closest('tr');
var price = $(tr).find('.ffour').html();
$(tr).find('.fone').html(price * $(this).val());
});
当用户更改数量,cookie中的数量也会发生变化时怎么办?例如,当用户将第一行的数量从1更改为2时,在网站cookie中,数量从1变为2。
cookie的名称是'SiteCookie'。并且有数量的产品。
答案 0 :(得分:0)
首先选择js for Cookies然后
$('.drop').on('change', function () {
$.cookie("qty",$(this).closest('tr'))
var price = $(tr).find('.ffour').html();
$(tr).find('.fone').html(price * $.cookie("qty"));
});
在页面加载时你也可以调用cookie ...如果cookie有值,那么执行这个
$(tr).find('.fone').html(price * $.cookie("qty"));