2011-09-23 61 views
1

我試圖通過一些ASP.NET頁面與Razor放在一起,從未見過剃刀在今天之前使用,或多或少,我想知道是否它是可能搶到的CSS樣式值,並用它在剃刀代碼,就像這樣:Razor:從頁面上的其他地方獲取樣式值

@foreach (var item in someList.Where(i => someHTMLElement.display == block 
           ? i.property == "value" 
           : i.property == "othervalue")) 
{ 
    ... display filtered list 
} 

就這麼Where位,我想用一些有用的東西來填充。有什麼建議麼?

回答

3

Razor在服務器上運行得更早,DOM樹由客戶端瀏覽器構建。這意味着您無法使用Razor訪問其他DOM元素。實現這一目標的最好方法是簡單地調整視圖模型並將必要的屬性包含在其中,並讓控制器填充它們。所以你認爲你所要做的就是對某個財產進行簡單的測試。

+0

我很害怕這一點。好吧。 –

1

你必須利用一些服務器端功能。 Razor視圖以層次結構呈現,因此要顯示的值必須在控制器(如果使用MVC)中定義,或者在您打算實現它的位置以上定義。但這取決於您在服務器上做出決定,還是使用JavaScript在客戶端上覆制此邏輯...