2014-12-02 27 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和同一個班級,每一個產品。

相關問題