Richiesta di conferma dopo aver effettuato delle modifiche

giovedì 24 gennaio 2008 - 07.52

steual Profilo | Newbie

Salve a tutti! sto realizzando una Web Application (ASP.NET AJAX, Vb.NET) e mi trovo in queste condizioni: dopo aver verificato che l'utente ha modificato dei dati devo richiedere la conferma del salvataggio delle stesse (il messaggio di conferma NON deve essere sempre visualizzato ma SOLO se sono state effettuate delle modifiche).
Sintetizzando molto potrei fare quest'esempio in cui ho una pagina con :
- campi in cui l'utente può intervenire modificandone il contenuto (TextBox, ...)
- 2 bottoni: SALVA ed ESCI. Il primo memorizza le modifiche nel DB, il secondo esce dalla pagina corrente richiamandone un'altra
Se l'utente effettua delle modifiche e preme il bottone "ESCI" (bottone server side:<asp:Button ID="BtnSave" runat="server" Text="SAVE" />) dovrebbe comparirmi il messaggio "Confermi il salvataggio delle modifiche effettuate ?", in caso di conferma dovrei richiamare la stessa funzione collegata al bottone "SALVA" (<asp:Button ID="BtnSave" runat="server" Text="SAVE" />):

Protected Sub BtnSalva_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles BtnSave.Click
Call SalvaDati()
End Sub

Da quandto ne so, la richiesta di conferma dovrebbe essere gestita "lato client" (javascript), mentre la procedura di salvataggio dati è "lato server". Spero di essere stato abbastanza chiaro !!

saluti
Stefano

Wamba Profilo | Expert

Usi la proprietà onclientclick del commandbutton tipo <asp:button id="MioButton" runat="server" onclientclick="return confirm('ma sei sicuro')?" />
Da notare che se si restituisce un "false" come risposta dell'onclientclick si anulla il postback.
-----------------------------------------------------------
Solo chi ha il Caos dentro può generare una stella danzante
Wamba
blogs.ugidotnet.org/WamBlog/
www.intellimaker.com

steual Profilo | Newbie

Grazie per la risposta, ma se non mi sbaglio la tua soluzione prevede che la richiesta di conferma (domanda : "confermi le modifiche ...") venga sempre generata, io invece devo prima verificare se sono state effettuate delle modifiche (e questo lo so), solo in tal caso devo avviare la "procedura" di conferma delle stesse. E' una "sottile" differenza ma al tempo stesso complicata da gestire !


grazie e ciao
Stefano

Wamba Profilo | Expert

Prego figurati.

Non è complicata:

scrivi una funzione javascript:

function VerifyUpdate()
{
var IsDirty;

/*Setta IsDirty con true se ci sono modifiche, false se non ci sono*/

if(! IsDirty){return true;}

return confirm('Accetti le modifiche?');
}

Poi nel pulsante di postback:
<asp:button id="MyButton" runat="server" onclientclick="return VerifyUpdate();" />

Fammi sapere

-----------------------------------------------------------
Solo chi ha il Caos dentro può generare una stella danzante
Wamba
blogs.ugidotnet.org/WamBlog/
www.intellimaker.com

steual Profilo | Newbie

grazie ancora ! direi che adesso ci siamo "quasi". Il problema successivo da affrontare è il seguente:
l'utente ha confermato le richieste, come richiamare dal javasript la funzione/il bottone "SALVA" che è "server side" che esegue le modifiche sul database ?

ciao e grazie
Stefano

Wamba Profilo | Expert

Se stai usando un asp:button lo fa in automatico. Basta che onclientclick restituisca true.
Ovviamente non ho messo il codice server, ma devi aggiungere onclick="funzioneserver" nel tag del bottone, come nella normale gestione degli eventi.
-----------------------------------------------------------
Solo chi ha il Caos dentro può generare una stella danzante
Wamba
blogs.ugidotnet.org/WamBlog/
www.intellimaker.com

steual Profilo | Newbie

Non so come ringraziarti, ho fatto delle prove e sembra tutto ok. In due righe (codice e commento) mi hai risolto un problema che mi tormentava da giorni !!!

grazie ancora e a buon rendere

ciao
Stefano

Wamba Profilo | Expert

Di niente figurati. Felice di averti aiutato.
(Come sempre ricordati di chiudere il thread).

-----------------------------------------------------------
Solo chi ha il Caos dentro può generare una stella danzante
Wamba
blogs.ugidotnet.org/WamBlog/
www.intellimaker.com
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