Frame con Asp.net C#

venerdì 19 gennaio 2007 - 13.47

nik10 Profilo | Junior Member

ciao a tutti....ho un problema....
ho una pagina aspx che contiene tre frame che aprono tre pagine diverse. Adesso, io su una di queste dovrei fare un rinfresco ma dalla mia pagina iniziale(quella che contiene tutte e tre) non riesco a pescarle... qualcuno a una idea?

Nik10

trasportation Profilo | Junior Member

Hai provato a mettere l'attributo target="_top" al form dal quale vuoi eseguire il refresh?

Se ho capito il problema.
/*
* web: http://www.robertobeccari.it
*/

nik10 Profilo | Junior Member

Provo a spiegarmi meglio....

in un frame ho una tabella con dei link per passare ad altre pagine. Quando clicco sul link forrei che si rinfrescassero anche altri 2 frame della pagina... con quello che mi hai suggerito ho provato ma forse non riesco a capire dove inserirlo...

Nik10

trasportation Profilo | Junior Member

Se vuoi ricaricare anche gli altri frame e non vuoi ricaricare la pagina contenente i frame l'unico modo è javascript.

Es:

fai una funzione fatta in questo modo:

function CaricaLink(url)
{
self.parent.frames[0].location.reload(); // ricarica il frame
self.parent.frames[1].location.href = url; // carica la pagina
self.parent.frames[2].location.reload(); // ricarica il frame
}

Ovviamente l'ordine e il numero di frame lo definisci tu.

Questa volta spero di ave capito

nik10 Profilo | Junior Member

si grazie ....
Però adesso io vorrei inserirlo via codice nei miei form. Ho provato con this.RegisterStartupScript
ma non lo inserisce dove dovrebbe essere per funzionare...
Come posso fare? e soprattutto se voglio aggiungere un evento tipo onclick o onload per farlo partire come riesco a recuperare i tag per poi eseguire tutte queste operazioni?

spero di essere stato chiaro... grazie
Nik10

nik10 Profilo | Junior Member

lo so hai ragione me l'hanno detto tutti... ma ne ho bisogno per forma purtroppo...
Nik10

trasportation Profilo | Junior Member

Per i frame, ti avrei consigliato la stessa cosa ma se tu hai chiesto come fare ho pensato che fosse una necessità farlo.

Il consiglio però rimane valido, ci alcune alternative al posto dei frame indipendentemente da quello che vuoi fare che danno lo stesso effetto anzi, l'effetto in molti casi è migliore.
Un pò di javascript e CSS e i frame non li vedi più.

http://www.dhtmlgoodies.com/packages/dhtml-suite-for-applications/demos/demo-pane-splitter.html

Questo esempio è un pò avanzato ma magari ti fà pensare se l'uso dei frame è l'unica alternativa.

/*
* web: http://www.robertobeccari.it
*/

trasportation Profilo | Junior Member

Tornando alla domanda...

>si grazie ....
>Però adesso io vorrei inserirlo via codice nei miei form. Ho
>provato con this.RegisterStartupScript
>ma non lo inserisce dove dovrebbe essere per funzionare...
>Come posso fare? e soprattutto se voglio aggiungere un evento
>tipo onclick o onload per farlo partire come riesco a recuperare
>i tag per poi eseguire tutte queste operazioni?

I tuoi form??? quanti ne hai???
a che tipo di oggetto devi assegnare l'evento onclick???

l'evento onload puoi assegnarlo al body nell'HTML come si fà normalmente.

Il javascript perchè lo registri via codice, il tuo frameset non è sempre lo stesso? puoi metterlo dentro un file .js e referenziarlo nella pagina.

Quante domande... forse è meglio eliminare i frame

/*
* web: http://www.robertobeccari.it
*/
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5