Design della pagina principale (ricarica in una nuova pagina)

2

Ho creato un sito web con 2 pagine e 1 pagina principale. La pagina master master funziona come un "Menu". Le due pagine ereditano dalla pagina principale e contengono alcuni contenuti.

Alla pagina 1 ho un link a pagina2. Una volta clicco sul link Pagina2 (e sulla pagina principale) carichi.

Penso piuttosto in avanti. Ma la mia domanda è ora:
La pagina master ofcourse si ricarica ogni volta che vado a una nuova pagina e quindi l'intero sito "si muove" per un breve momento per passare alla pagina successiva. Esiste qualche "best practice" per mantenere la pagina principale (il menu) sulla pagina mentre si carica solo il contenuto?

Voglio ancora dividere le due pagine in Page1.aspx e Page2.aspx e non avere tutti i miei contenuti in 1 pagina con pannelli che mostrano il contenuto di page1 e un altro pannello che mostra il contenuto di page2, ecc.
Dovrei usare una sorta di controllo che ha le pagine al loro interno o è solo una domanda stupida e non dovrei essere disturbato dall'intera pagina sfogliando perché questo è solo un normale "comportamento web"?

Spero che tu possa aiutare :)

    
posta Thomas 09.05.2012 - 15:05
fonte

3 risposte

3

Sembra che tu stia cercando un sito carica i nuovi dati e aggiorna direttamente l'HTML - questo non è il modo in cui i webform ASP.NET funzionano di default. Quando vai su una nuova pagina, devi caricare da zero.

Per ottenere ciò che desideri, devi utilizzare AJAX per interrogare il server web per dati / modello e aggiorna la pagina.

I moduli possono funzionare in questo modo - utilizzando UpdatePanel e classi correlate e javascript.

    
risposta data 09.05.2012 - 15:09
fonte
0

L'eccellente risposta di Oded è corretta, UpdatePanel ti consentirà di utilizzare AJAX in modo che i contenuti all'interno di UpdatePanel possano essere rerenderti senza aggiornare l'intera pagina all'interno del browser, ma in questo modo la navigazione della pagina non sarà magicamente AJAX 'ified.

Se si richiama un'azione browser in cui si richiede un'altra pagina per accedere alla pagina ASPX, il server passerà a un'altra pagina.

Penso che tu fondamentalmente fraintenda come funziona una MasterPage. Non è una singola pagina Web con pagine figlio abilitate AJAX iniettabili che impediscono la navigazione del browser. È semplicemente un modello che Page1.aspx e Page2.aspx utilizzano entrambi, ma alla fine il server riconoscerà comunque che queste due pagine sono elementi navigabili separati.

Penso che dovresti forse vedere come sviluppare un UserControl . Questi possono essere definiti in markup e code behind come se fossero una pagina separata e possono essere inseriti all'interno di un UpdatePanel per aggiornare i componenti in questione senza dover eseguire il postback di una pagina intera.

    
risposta data 09.05.2012 - 15:52
fonte
0

Un altro approccio è quello di abbandonare il concetto di una "pagina master" con la navigazione e 2 pagine di contenuto.

Forse pensaci solo come 2 pagine, che contengono sia contenuti che navigazione in cui la navigazione potrebbe essere simile su entrambe le pagine.

Una pagina html è un documento e sia la navigazione che il contenuto fanno parte di quel documento. Senza la navigazione, non riesci a trovare altre pagine e senza contenuti non c'è niente di troppo da trovare.

    
risposta data 09.05.2012 - 16:14
fonte

Leggi altre domande sui tag