2013-09-22 115 views
0

希望有人可以幫助我我想我知道什麼是問題,但我似乎無法使其工作。ASP.NET網站,按鈕只是超鏈接

我有一個小網站,VB Web開發人員編寫的2010年

我期待移動我使用的主機公司,但我遇到的問題是,在頁面頂部的按鈕:

<asp:Menu ID="NavigationMenu" runat="server" CssClass="menu" EnableViewState="false" IncludeStyleBlock="false" Orientation="Horizontal"> 
    <Items> 
     <asp:MenuItem NavigateUrl="~/Default.aspx" Text="Home"/> 
     <asp:MenuItem NavigateUrl="~/About.aspx" Text="About"/> 
    </Items> 
</asp:Menu> 

舊的主機,他們顯示罰款。新的主機(我自己做的一切的VPS服務器)只顯示爲超鏈接。

我認爲它是ASP.net的版本我編譯它,目前3.5,但我可能是錯誤的,我已經多次嘗試讓它工作。

任何幫助表示讚賞。謝謝!

回答

0

解決方案!

服務器端:將asp.net版本更改爲4。0使用位於here

在你的web.config

答案我有一個符合此

<pages controlRenderingCompatibilityVersion="3.5" clientIDMode="AutoID"/> 

更改爲

<pages controlRenderingCompatibilityVersion="4.0" clientIDMode="AutoID"/> 

完成!

謝謝你的幫助E.J.不知道它是CSS相關的,我不可能遇到答案。

3

您確定您已經複製了與該項目一起使用的CSS文件,並且它們位於具有正確權限的目錄中嗎?

閱讀此鏈接,然後:http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.menu.renderingmode.aspx

尤其是它引用了您可能需要當您從3.5或更低的變化設置爲4.0

renderingMode屬性的值確定rendermode設置菜單 控件如何呈現Menu控件的標記。在早期版本的ASP.NET 3.5和 中,Menu控件使用HTML表格元素和內嵌 樣式來指定瀏覽器中菜單的外觀。在ASP.NET 4及更高版本中,默認情況下,Menu控件使用HTML listitem元素和級聯樣式表(CSS)樣式。如果此屬性未設置 ,則Menu控件將呈現適合 的Control.RenderingCompatibility屬性所指示的ASP.NET版本的標記。菜單控件使用 以下規則:

  • 如果RenderingCompatibility屬性的值是3.5,菜單控件使用HTML表元素和內聯樣式。
  • 如果RenderingCompatibility屬性的值爲4.0或更大,則Menu控件使用HTML listitem元素和CSS樣式。

此屬性用於向後兼容。如果 RenderingCompatibility屬性指示您想將控件生成爲 生成與ASP.NET 4或更高版本兼容的HTML,但您希望 將Menu控件設置爲使用先前行爲的異常,則您可以將此屬性設置爲Table。例如,如果您的網頁 顯示從右到左的文本,則可能需要將此 屬性設置爲Table,因爲某些瀏覽器不會正確顯示從右到左文本的列表模式 標記。

+0

直接上傳使用FTP,之所以我認爲它是服務器/版本的asp.net,我使用的是godaddy,並有4.0的設置,我相信這是我得到的問題,如果我在我的電腦上使用調試運行網站它也顯示超鏈接,它顯示爲按鈕的唯一地方是godaddy – Demonicpenguin

+1

編輯我的迴應,但最終仍然是一個CSS問題,我相信,但設置可能會指示它使用正確的CSS 。 –

+0

謝謝,非常感謝,回去工作! – Demonicpenguin