Home Page
Articoli
Tips & Tricks
News
Forum
Archivio Forum
Blogs
Sondaggi
Rss
Video
Utenti
Chi Siamo
Contattaci
Username:
Password:
Login
Registrati ora!
Recupera Password
Home Page
Stanze Forum
ASP.NET 1.0/1.1
Bottoni che noia
lunedì 24 ottobre 2005 - 14.12
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
ilpako
Profilo
| Junior Member
184
messaggi | Data Invio:
lun 24 ott 2005 - 14:12
ho un problema con un bottone all'interno di un form.perchè quando clikko per effettuare la query di inserimento dati,prima di attivare l'evento onclick si passa per pageload?ho bisogno di tenere il link della pagina kiamante quando faccio submit col bottone.in questo caso se si attiva pageload prima dell'evento onclick, la pagina kiamante è quella corrente non quella che effettivamente mi ha linkato al form...
Brainkiller
Profilo
| Guru
7.999
messaggi | Data Invio:
mar 25 ott 2005 - 00:19
Ciao,
attenzione per definizione in ASP.NET 1.1 quando fai un submit della pagina premendo sul pulsante viene fatto sulla pagina stessa. Quindi avrai la possibilità di avere la pagina precedente perchè è sempre la stessa.
In ASP 3.0 era diverso, ma in ASP.NET 1.1 non si può. In ASP.NET 2.0 sarà di nuovo possibile eseguire il postback su un'altra pagina (crosspage postback).
Se non vuoi eseguire il codice all'interno del Page_Load è sufficiente inserire il controllo:
If Not Page.IsPostback Then
...
End If
Ciao
David De Giacomi
Microsoft MVP
http://blogs.dotnethell.it/david/
ilpako
Profilo
| Junior Member
184
messaggi | Data Invio:
mar 25 ott 2005 - 01:14
non mi sono spiegato...io devo differenziare il comportamento del bottone nel form (costruisce una query di inserimento dati) a seconda della pagina ke kiama quella in cui esso è contenuto.Se la kiama una certa pagina deve inserire i dati nel db, se la kiama un'altra pagina deve costruire una stringa (query sql) da mandare alla pagina kiamante senza però inserire i dati nel db.Il problema che debuggando mi accrgo che prima di arrivare alla classe dell'evento onclick viene effetuato un pageload.In questo modo la pagina kiamante diventa la stessa pagina che contiene il form...
ilpako
Profilo
| Junior Member
184
messaggi | Data Invio:
mar 25 ott 2005 - 01:20
dimenticavo...ilmio scopo rimane sempre lo stesso
http://www.dotnethell.it/forum/messages.aspx?ThreadID=4930
e.disanto
Profilo
| Junior Member
84
messaggi | Data Invio:
mar 25 ott 2005 - 17:26
Non sono sicuro di aver compreso pienamente le tue intenzioni, ma se non ho capito male c'è una pagina che può effettuare diverse operazioni e, sempre in questa pagina, c'è un bottone che lancia le diverse operazioni in base alla pagina chiamante; se sei arrivato alla pagina tramite la pagina "A", cliccando il pulsante fai una determinata cosa, se ci sei arrivato dalla pagina "B", cliccando il pulsante fai un'altra cosa, ecc. Giusto???
Beh, se è così potresti pensare di richiamre la pagina contenente il pulsante passando anche un parametro... così nella pagina "A" passerai "?operazione=a", nella pagina "B" passerai "?operazione=B", e all'interno del Page_Load definisci le diverse operazioni da fare...
Spero di averti aiutato (sempre se ho capito bene quello che ti serve ;-)...)
Ernesto di Santo
Analista Programmatore .NET
ilpako
Profilo
| Junior Member
184
messaggi | Data Invio:
mer 26 ott 2005 - 01:34
qui spiego meglio...
http://www.dotnethell.it/forum/messages.aspx?ThreadID=4930
ilpako
Profilo
| Junior Member
184
messaggi | Data Invio:
mer 26 ott 2005 - 10:06
la mia pagina A effettua l'inserimento dati nel database utilizzando tre forms ognuno in una pagina diversa B,C,D (una sorta di inserimento step by step come la registrazione dati in un provider) accessibili tramite link sulla pagina principale A.Quindi ho bisogno innanzitutto che i dati di questi tre forms non vengano subito inseriti nel db tramite le pagine B,C,D ma vengano inviati alla pagina A,sottoforma di query(stringhe), e poi inseriti nel db tramite la pagina A.
Il problema è che queste tre pagine B,C,D possono essere utilizzate anche singolarmente se kiamate da un'altra pagina X, e in questo caso i dati possono essere direttamente inseriti nel db.
Quindi in base alla pagina kiamante il bottone del submit presente nelle pagine B,C,D deve fare due azioni diverse:
-o inserisce i dati direttamente nel db nel caso la kiamante sia X
-oppure invia la query di inserimento alla pagina kiamante A che provvederà a raccoglierla insieme alle query delle altre pagine e a fare un unico inserimento.
Le pagine B,C,D le utilizzo due volte ma in contesti diversi kiaro?è inutile creare una pagina che ha un form al suo interno che è già stato creato,anche se spezzettato in altre pagine.
Spero di essere stato kiaro
PEPE
Profilo
| Senior Member
296
messaggi | Data Invio:
mer 26 ott 2005 - 12:55
Ciao,
io per risolvere una situazione del genere ho usato una tabellilla in sessione leggerissima dove tengo traccia delle operazioni fatte.
Nel tuo caso farei in questo modo: creo una tabella con colonne a b c e ci metto i valori 0 0 0. Ogni volta che finisci uno step metti ad 1 l'indice della relativa colonna che si riferisce alla pagina completata.
Poi non devi far altro che controllare che nella tabella siano presenti tutti 1 per effettuare l'inserimento.
Se non vuoi usare la sessione (dato che molti la sconsigliano) fatti una variabile a livello di classe che recuperi con il server.trasfer.
In questo modo con un po di controlli ottieni lo stesso risultato.
Spero di aver capito bene il tuo problema e spero di essere riuscito a darti un possibile aiuto.
Ciao,
Luca.
PEPE
Profilo
| Senior Member
296
messaggi | Data Invio:
mer 26 ott 2005 - 12:58
ahh dimenticavo...
Puoi usare anche una stringa con un marcatore che divide le colonne tipo:
Stringa= 1#0#0;
Poi in ogni pagina fai le docute operazioni.
ilpako
Profilo
| Junior Member
184
messaggi | Data Invio:
mer 26 ott 2005 - 16:34
grazie mille ragazzi...provo subito
Torna su
Stanze Forum
Elenco Threads
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 !