Jak načíst obsah stránek asynchronní pomocí jQuery?

hlasů
0

TGIF,

Mám webové stránky jsem se rozvíjející, která se používá / Mapa stránek / nastavení ASP.NET Masterpage obsahu stránek. Nenávidím „blikání“ na místě dělá při navigaci mezi jednotlivými stránkami obsahu pomocí asp: ovládání menu. Nějaké návrhy na to, jak používat jQuery Ajax místo AJAX.NET updatepanels? Použil jsem updatepanels v minulosti, a to nesnáším; neohrabaný a nafouklý.

Zde je kód:

<%@ Master Language=C# AutoEventWireup=true CodeFile=MasterPage.master.cs Inherits=MasterPage %>

<%@ Register Assembly=AjaxControlToolkit Namespace=AjaxControlToolkit TagPrefix=cc1 %>
<!DOCTYPE html PUBLIC -//W3C//DTD XHTML 1.0 Transitional//EN http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd>
<html xmlns=http://www.w3.org/1999/xhtml>
<head runat=server>
    <link href=styles/master.css rel=stylesheet type=text/css />
    <title>Impeccable Construction Service</title>
    <asp:ContentPlaceHolder ID=head runat=server>
    </asp:ContentPlaceHolder>
</head>
<body>
    <form id=form1 runat=server>
    <cc1:ToolkitScriptManager ID=ToolkitScriptManager1 runat=server>
        <Scripts>
            <asp:ScriptReference Path=~/scripts/jquery-1.3.2.js />
        </Scripts>
    </cc1:ToolkitScriptManager>
    <div id=main>
        <div class=header>
            <asp:Image ID=HeaderLogo runat=server ImageUrl=images/header-logo.png />
            <asp:Image ID=SubHeader runat=server ImageUrl=images/sub-header.png />
        </div>
        <div class=navbar>
            <asp:SiteMapDataSource ID=SiteMapDataSource1 runat=server />
            <asp:Menu ID=NavMenu runat=server Orientation=Horizontal DataSourceID=SiteMapDataSource1
                StaticDisplayLevels=2 MaximumDynamicDisplayLevels=4 DynamicHorizontalOffset=1
                StaticSubMenuIndent=1px DynamicPopOutImageUrl=images/right-arrow.gif StaticPopOutImageUrl=images/drop-arrow.gif
                CssClass=NavMenu Height=30px>
                <StaticMenuItemStyle ItemSpacing=10 CssClass=staticMenuItemStyle />
                <StaticHoverStyle CssClass=staticHoverStyle />
                <StaticSelectedStyle CssClass=staticMenuItemSelectedStyle />
                <DynamicMenuItemStyle CssClass=dynamicMenuItemStyle />
                <DynamicHoverStyle CssClass=menuItemMouseOver />
                <DynamicMenuStyle CssClass=menuItem />
                <DynamicSelectedStyle CssClass=menuItemSelected />
                <DataBindings>
                    <asp:MenuItemBinding DataMember=siteMapNode NavigateUrlField=url TextField=title
                        ToolTipField=description />
                </DataBindings>
            </asp:Menu>
            <asp:SiteMapPath ID=SiteMapPath1 runat=server RenderCurrentNodeAsLink=true
                PathSeparator= >>  CssClass=currentNodeStyle>
                <PathSeparatorStyle ForeColor=#5D7B9D CssClass=currentNodeStyle />
                <CurrentNodeStyle ForeColor=#333333 CssClass=currentNodeStyle />
                <NodeStyle ForeColor=#7C6F57 CssClass=currentNodeStyle />
                <RootNodeStyle ForeColor=#5D7B9D CssClass=currentNodeStyle />
            </asp:SiteMapPath>
        </div>
        <div id=content>
            <asp:ContentPlaceHolder ID=ContentPlaceHolder1 runat=server>
            </asp:ContentPlaceHolder>
        </div>
        <div class=footer>
            <h4>
                Rivera Design Studio
            </h4>
        </div>
    </div>
    </form>
</body>
</html>
Položena 18/12/2009 v 20:48
zdroj uživatelem
V jiných jazycích...                            


3 odpovědí

hlasů
2

Dalo by se použít Superfish plugin pro jQuery ve spojení s vaší Sitemap a menu. Zde je podobná otázka .

Odpovězeno 18/12/2009 v 21:12
zdroj uživatelem

hlasů
1

Jsou vaše obsahové stránky statické nebo dynamické? V případě, že jsou statické, můžete vždy provést get a vyměnit obsah jako tak:

function GetNewContent(contentSource)
{
  $.get(contentSource, function(content){

     $('#contentArea').html(content);   

  });
}

kde contentSource je vaše adresa URL obsahu, který chcete obnovit. Dalo by se zbavit nabídce Asp a jít pro jednoduché asp: repeater a krmiva s daty.

Chcete-li být upřímný, mapa stránek je více než inženýrství a docela nepružná ve srovnání s jednoduchými jQuery navigačních řešení, kde budete stavět si své menu s ul / li tagy. Je jednodušší vytvořit vlastní datovou strukturu a čerpadlo ji klientovi pro jQuery manipulovat.

Odpovězeno 20/12/2009 v 21:24
zdroj uživatelem

hlasů
0

http://docs.jquery.com/Ajax/jQuery.getJSON

$.getJSON(myAction, { Data: myData }, function(data) {

 // process data return on callback

});
Odpovězeno 18/12/2009 v 21:16
zdroj uživatelem

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more