2011-03-19 71 views
0

我有一個帶有jQuery選項卡的ASP.Net母版頁。ASP.Net母版頁和jQuery創建重複內容

我試圖將其設置是這樣的:

<div id="tabs"> 
    <ul> 
     <li><a href="Default.aspx">Home</a></li> 
     <li><a href="Settings.aspx"">Settings</a></li> 
     <li><a href="About.aspx">About</a></li> 
    </ul> 
    <div> 
     <asp:ContentPlaceHolder ID="Content" runat="server"> 
     </asp:ContentPlaceHolder> 
    </div> 
</div> 

的的ContentPlaceHolder的DIV是標籤的div內部,使jQuery的標籤包圍的內容。

<script> 
    $(document).ready(function() { 
     $("#tabs").tabs(); 
    }); 
</script> 

我能做些什麼來避免這樣的:不幸的是,jQuery的把這個變成現實的jQuery標籤時複製的母版頁的所有內容?

+1

你使用某種標籤插入?如果不是,那麼tabs()函數會做什麼?你在這裏意味着什麼?你能分享一個截圖嗎? – neebz 2011-03-19 18:27:51

回答

2

你的問題是,JQuery選項卡更改了其內容在頁面中加載的三個div的可見性。 與您使用的頁面不同。

所以,如果你想要的是利用JQuery UI CSS爲你的標籤。

然後,簡單的方法是將類名複製到li-tags中,並使一些服務器端邏輯改變active/inactive選項卡的類。 我自己爲MVC解決方案做了這個,我希望佈局一致,因此選擇了JQuery UI。沿着方式

東西:

<li><a href="Default.aspx" class="ui-tabs... ui-... <% 
    if(HttpContext.current.url.contains("Default.aspx"))%><%:ui-active-tab%><% 
    %>" >Home</a></li> 
    <li><a href="Settings.aspx" class="ui-tabs... ui-... <% 
    if(HttpContext.current.url.contains("Settings.aspx"))%><%:ui-active-tab%><% 
    %>" >Settings</a></li> 

語法從存儲器寫入,C#和類名。所以請原諒我在這方面的錯誤。

希望我猜對了你的問題。

2

我不熟悉的jQuery UI選項卡插件,但是從我在documentation看,你應該有每片一格,和錨應該鏈接到ID的個人的div:

<div id="tabs"> 
    <ul> 
     <li><a href="#tabs-1">Nunc tincidunt</a></li> 
     <li><a href="#tabs-2">Proin dolor</a></li> 
     <li><a href="#tabs-3">Aenean lacinia</a></li> 
    </ul> 
    <div id="tabs-1"> 
     <p>Proin elit arcu, rutrum commodo, vehicula tempus, commodo a, risus. Curabitur nec arcu. Donec sollicitudin mi sit amet mauris. Nam elementum quam ullamcorper ante. Etiam aliquet massa et lorem. Mauris dapibus lacus auctor risus. Aenean tempor ullamcorper leo. Vivamus sed magna quis ligula eleifend adipiscing. Duis orci. Aliquam sodales tortor vitae ipsum. Aliquam nulla. Duis aliquam molestie erat. Ut et mauris vel pede varius sollicitudin. Sed ut dolor nec orci tincidunt interdum. Phasellus ipsum. Nunc tristique tempus lectus.</p> 
    </div> 
    <div id="tabs-2"> 
     <p>Morbi tincidunt, dui sit amet facilisis feugiat, odio metus gravida ante, ut pharetra massa metus id nunc. Duis scelerisque molestie turpis. Sed fringilla, massa eget luctus malesuada, metus eros molestie lectus, ut tempus eros massa ut dolor. Aenean aliquet fringilla sem. Suspendisse sed ligula in ligula suscipit aliquam. Praesent in eros vestibulum mi adipiscing adipiscing. Morbi facilisis. Curabitur ornare consequat nunc. Aenean vel metus. Ut posuere viverra nulla. Aliquam erat volutpat. Pellentesque convallis. Maecenas feugiat, tellus pellentesque pretium posuere, felis lorem euismod felis, eu ornare leo nisi vel felis. Mauris consectetur tortor et purus.</p> 
    </div> 
    <div id="tabs-3"> 
     <p>Mauris eleifend est et turpis. Duis id erat. Suspendisse potenti. Aliquam vulputate, pede vel vehicula accumsan, mi neque rutrum erat, eu congue orci lorem eget lorem. Vestibulum non ante. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Fusce sodales. Quisque eu urna vel enim commodo pellentesque. Praesent eu risus hendrerit ligula tempus pretium. Curabitur lorem enim, pretium nec, feugiat nec, luctus a, lacus.</p> 
     <p>Duis cursus. Maecenas ligula eros, blandit nec, pharetra at, semper at, magna. Nullam ac lacus. Nulla facilisi. Praesent viverra justo vitae neque. Praesent blandit adipiscing velit. Suspendisse potenti. Donec mattis, pede vel pharetra blandit, magna ligula faucibus eros, id euismod lacus dolor eget odio. Nam scelerisque. Donec non libero sed nulla mattis commodo. Ut sagittis. Donec nisi lectus, feugiat porttitor, tempor ac, tempor vitae, pede. Aenean vehicula velit eu tellus interdum rutrum. Maecenas commodo. Pellentesque nec elit. Fusce in lacus. Vivamus a libero vitae lectus hendrerit hendrerit.</p> 
    </div> 
</div> 

看來你只有一個分區...我不明白你想如何工作。

0

我正在用Erlend D編寫這個網站..問題是我們希望標籤是頁面的主菜單,所以主頁是要走的路。你如何將主頁面的「孩子」納入這些div?

例如: 如果您有頁面:one.aspx,two.aspx和three.aspx,並且您希望主頁中的jqueryui選項卡鏈接到這些頁面,那麼會怎麼做?

+0

問題是,jQuery UI選項卡不是這樣設計的。有一種方法只是首先加載一個頁面的數據,然後讓其他的使用ajax加載。看一個例子[this](http://jqueryui.com/demos/tabs/#ajax)。 – fretje 2011-03-20 13:08:02