2014-12-02 123 views
0

我想请求您的帮助,以对我正在处理的某些代码进行一些代码修改。如何将产品分组显示在页面

目前代码显示的 'x' 在时尚的网页上的产品编号:

盒1(产品ID 140)

价格:$ 10

盒2(产品ID 140)

价$ 10

盒3(产品编号143) - 不同的ID

价$ 20

级次总计:$ 40.00

CODE

  <div class="yourorder"> 
       @foreach (var prod in Model.Products) 
       { 
        for (var i = 0; i < prod.Count; i++) 
        { 
         <div data-index="@i" data-type="product" data-id="@prod.ID" data-multiple="@prod.Multiple" data-multiplecatid="@prod.MultipleCategoryID">         
          @{Html.RenderAction("ShoppingCartProduct", "ShoppingCart", new { id = prod.ID });} 
          <div class="shippingArea"> 
           <div class="shippingPickerLabel">Use this shipping address:</div> 
           <div> 
            <select class="shippingPicker" data-type="prod" data-id="@(prod.ID)"> 
             <option value="-1">Add New</option> 
            </select> 
           </div> 
          </div> 
         </div> 
        <br /> 
        <hr /> 
        } 
       } 
       <div class="totals" style="font-weight:normal;margin-top:20px;"> 

        @if (Model.TotalPriceFrom == Model.TotalPriceTo) 
        { 
         <div><strong>Order Sub-Total:</strong> $<span class="grandTotal">@Model.TotalPriceTo.ToString("0.00")</span></div> 
        } 
        else 
        { 
         <div><strong>Order Sub-Total:</strong> $<span class="grandTotal">@Model.TotalPriceFrom.ToString("0.00") - [email protected]("0.00")</span></div> 
        } 
       </div> 
     </div> 

价格在一个名为 “ShoppingCartProduct” PartialView计算。

CODE

<div class="shoppingCartPrice"> 
    @if (Model.Prod.HasRange && Model.Prod.WeightFrom.HasValue && Model.Prod.WeightTo.HasValue) 
    { 
     if (Model.Prod.UnitID.HasValue) 
     { 
      <div>[email protected]("0.00") per @Model.UnitName</div> 
     } 
     <div>Price: [email protected]((Model.Prod.Price.Value * Model.Prod.WeightFrom.Value).ToString("0.00")) - [email protected]((Model.Prod.Price.Value * Model.Prod.WeightTo.Value).ToString("0.00"))</div> 
     <div style="display:none;" class="minPrice">@((Model.Prod.Price.Value * Model.Prod.WeightFrom.Value).ToString("0.00"))</div> 
     <div style="display:none;" class="maxPrice">@((Model.Prod.Price.Value * Model.Prod.WeightTo.Value).ToString("0.00"))</div> 
    } 
    else 
    { 
     <div>Price: [email protected]("0.00")</div> 
     <div style="display:none;" class="minPrice">@((Model.Prod.Price.Value).ToString("0.00"))</div> 
     <div style="display:none;" class="maxPrice">@((Model.Prod.Price.Value).ToString("0.00"))</div> 
    } 
</div> 

我需要使它计算不同,显示不同的过帮助:,做的代码。

喜欢:

盒1数量2(产品具有相同的id)

价格每$ 10

子总$ 20.00

盒2数量1(产品具有不同的ID)

price $ 20

小计$ 20.00

订单小计:$ 40.00

回答

0

不久前我也有同样的问题。我们通过使用cookie解决了这个问题。 这些产品是从一个SQL服务器加载的,但是对于每个产品,我们增加了它的ID为1,因此产品ID范围从1到X.考虑到一个巨大的网上商店,我们制定了这个4号包机长,所以:0001

然后,我们只是将产品ID读入一个字符串,并在其后面添加数量,这样一个6个字符的字符串。然后:

int count = Response.Cookie["producten"].Length/6 

for (int i = 0; i < count; i++) 
{ 
//paste your string decoder here to sort out the product ID and the quantity 
Panel p = new Panel(); 
p.ID = i; 
p.CssClass = [your cssclass] 
//paste here code for the rest of your div 
cartdiv.Controls.Add(p); 
} 

通过这样做,代码生成一个div(或其他任何你想要的)具有独特的ID和同一个班级,每一个产品。

相关问题