2013-08-29 78 views
1

您好,我想在後面的代碼中動態添加CSS類。在後面的代碼中動態添加CSS類使用c#

這很容易添加,但我有一點不同的結構。

我有有一個格像這樣的母版頁:

<div class="contnav_bg" id="wrapper"> 

// some content 


<div> 

我想class="contnav_bg"將只適用於dashboard.aspx頁。

現在它適用於所有頁面。

我可以爲它創建函數或其他任何東西。

謝謝

+0

你可以使用jQuery添加/刪除類 – Ehsan

+0

爲@NoOne說使用jQuery,如果你想在代碼執行後面再運行scriptclient – Zaki

+0

@NoOne你可以發佈任何鏈接幫幫我? – neha

回答

1

如果您不想做這個服務器端,你可以通過一些在我看來更乾淨的jQuery來實現。添加到您的母版:

<script type="text/javascript"> 
$(document).ready(function() { 
    if(window.location.pathname.indexOf('dashboard.aspx') > 0) 
    { 
     $('#wrapper').addClass('contnav_bg'); 
    } 
}); 
</script> 

這將着眼於當前URL且僅當它的用戶是dashboard.aspx頁面上應用的類。

或者,直接將代碼放在了dashboard.aspx模板只有,而不是把它的母版頁:

<script type="text/javascript"> 
$(document).ready(function() { 
    $('#wrapper').addClass('contnav_bg'); 
}); 
</script> 
+0

謝謝.................... – neha

1

我會爲此使用jQuery。

在你Dashboard.aspx頁面的標記,添加以下內容:

<script type="text/javascript"> 
    $(document).ready(function(){ 
     $('div#wrapper').addClass('contnav_bg'); 
    }); 
</script> 

如果你是新來的jQuery,這裏有一個 「入門」 教程:http://learn.jquery.com/javascript-101/getting-started/

+0

爲什麼downvote? – htxryan

+0

即將問到,這沒什麼不妥。有+1 – DGibbs

-1

如果你只想要一些頁面有這個類,然後穿上」保留在主頁面中。如果你想在服務器上設置它,你必須能夠在那裏訪問DIV。所以,你應該讓一個服務器的div:

<div id="wrapper" runat="server"></div> 

注意,當你做到這一點,ID將被改變,因此它使用它可能會破壞任何JavaScript。

然後,當您執行服務器代碼時,您可以獲取div並添加一個屬性,但只能在Dashboard.aspx代碼隱藏中。您可以在Page_Load中做到這一點:

var myDiv = this.FindControl("wrapper") as HtmlGenericControl; 
myDiv.Attributes["class"] = "contnav_bg"; 
相關問題