2012-04-03 21 views
0

我將數據分成頁面,一個用於菜單,另一個用於彼此的內容。 我已經使用jquery將我從數據庫獲得的數據添加到我的網頁中。 菜單頁面使用ItemModels,內容頁面使用BrandModels。無法將代碼附加到asp.net mvc的其他頁面使用jquery

這是內容頁:

<div id="brand-item"> 

    <% if (blahblah == true){ %> 
     <a href="<%: brand_url %>" id="brand_id"> 
       <img src="<%:Model.Item[i].Brand.Image%>" width = "85px"/> 
     </a> 
    <% } else { %> 
      &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
    <% } %> 
</div> 

這是我在菜單頁面的嘗試:

if ($("#brand_id").length > 0) { 
    document.getElementById("brand_id").innerHTML = '<img 
    src="<%:Model.Item[i].Brand.Image%>" width = "85px"/>'; 
} else { 
    document.getElementById("brand-item").innerHTML = 
    "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"; 
} 

然後是錯誤:BrandModels不包含定義「項目」,並沒有擴展方法'Item'接受第一個參數。 但實際上,我只是想在菜單頁中將這行HTML和asp.net代碼追加到內容頁面。

任何人都可以告訴我如何解決這個問題嗎?

非常感謝和歡迎您的答案。

+0

你的控制器是什麼樣的? – 2012-04-03 08:38:32

回答

0

這個問題一定是因爲'Model.Item [i] .Brand.Image'在Jquery中,數組索引'i'在這裏沒有任何價值。嘗試檢查索引'i'是否在這裏保留價值

+0

呃是的,我看到了,我修改了它。但它仍然像以前修改錯誤。 – Nothing 2012-04-03 07:25:59

+0

嘗試提醒我的價值,看看你是否得到任何價值。如果不嘗試用0對代碼進行硬編碼並檢查是否得到所需輸出 – TRR 2012-04-03 07:31:41

+0

當然,我從i更改爲1,但仍然出現錯誤:BrandModels不包含'Item'的定義,也沒有擴展方法' Item'接受第一個參數。 – Nothing 2012-04-03 07:33:32

0

您的內容頁面很可能是強類型的BrandModel類型。 你是如何設置菜單頁面的?它是公開類型(動態)嗎?

如果您不強烈地鍵入您的頁面,您將遇到類似的錯誤,因爲頁面不知道模型中的數據如何被構造。

+0

很好用它是一個局部視圖,這裏'<%@ Control Language =「C#」Inherits =「System.Web.Mvc.ViewUserControl 「%>' – Nothing 2012-04-03 08:46:36

相關問題