2010-11-10 61 views
1

下面的代碼工作,但混淆了Visual Studio。是否有替代/更好的方法來實現這一點?用於替換屬性的Contentplaceholder?

<body <asp:contentplaceholder id="BodyAttribute" runat="server"/>> 
+0

你有類似的東西兩個關閉「>」s – IrishChieftain 2010-11-10 23:14:21

+0

@IrishChieftain是它有2「>」,因爲他喜歡在body標籤內添加內容 – Aristos 2010-11-10 23:21:21

+0

@Aristos,gotcha :-)但我不明白爲什麼有人會需要這樣做。 .. – IrishChieftain 2010-11-10 23:37:20

回答

1

其他方式

<asp:contentplaceholder id="BodyAttribute" runat="server"><body></asp:contentplaceholder> 

和的ContentPlaceHolder您鍵入

<body attr="whatever"> 

如果沒有佔位找到,則<body>使用。

+0

謝謝!這工作,但它現在混淆了編輯。大聲笑 – 2010-11-12 17:04:06

+0

不幸的是,這完全混淆了視覺工作室編輯器。嗯,我認爲這是最好的解決方案。現在我有第二個想法 – 2010-11-12 22:53:23

1

我不認爲這是一個好主意。

首先,使用ContentPlaceHolder s,您可以輕鬆地用HTML替換換行符id屬性。

其次,代碼將總共意大利麪條。你將無法維護它。

第三,必須有更好的方式完成你所需要的。

例如,如果您需要更改body id以實現CSS樣式目的,或者在JavaScript中使用它,您最好爲此創建一個嵌套div。

站長:

<body> 
    <!-- div wrapper for general styling purposes --> 
    <div id="mainContentWrapper"> 
    <asp:contentplaceholder id="Maincontent" runat="server" /> 
    </div> 
</body> 

頁:

<asp:content contentplaceholderid="MainContent" runat="server"> 
    <!-- div wrapper for page specific styling --> 
    <div id="pageSpecificIdForYourPuprose"> 
    Your content goes here 
    </div> 
</asp:content> 

,這將給你很有風格,能夠HTML:

<body> 
    <div id="mainContentWrapper"> 
    <div id="pageSpecificIdForYourPuprose"> 
     Your content goes here 
    </div> 
    </div> 
</body> 

我真的會盡量避免那些WebForms的棘手事完成簡單的事情。簡單的事情可以用簡單的方式完成(至少很常見)。

希望有所幫助。