93 messaggi dal 25 maggio 2005

Devo trasformare la mia routine che adesso invia una mail lato server in un webmethod (contrassegnandolo con l ' apposito attributo) .
Successivamente registro tramite javascript nel document.ready che al click del pulsante apro la prima dialog.
La prima dialog conterrà due bottoni,uno invia email e l altro annulla.
Se clicca invia mail tramite jquery ajax chiamo il webmethod e se tutto ve bene alla funzione success dico sempre tramite javascript di chiudere la prima dialog e aprire la seconda che conterrà solo un messaggio di conferma.


PERFETTO!
1.495 messaggi dal 27 dicembre 2005
Gluck ha scritto:

Devo trasformare la mia routine che adesso invia una mail lato server in un webmethod (contrassegnandolo con l ' apposito attributo) .
Successivamente registro tramite javascript nel document.ready che al click del pulsante apro la prima dialog.
La prima dialog conterrà due bottoni,uno invia email e l altro annulla.
Se clicca invia mail tramite jquery ajax chiamo il webmethod e se tutto ve bene alla funzione success dico sempre tramite javascript di chiudere la prima dialog e aprire la seconda che conterrà solo un messaggio di conferma.


PERFETTO!


Allora avevo usato prima la soluzione postata ieri, funzionava tutto però non si vedeva solo la seconda dialog, forse un problema tra i vari Postback.

Con questa soluzione tutto funziona perfettamente.

Grazie.
1.495 messaggi dal 27 dicembre 2005
Ma usando il metodo jquery .ajax che richiama un webmethod nella stessa pagina, ho notato che non è possibile accedere direttamente ai controlli della pagina, posso accederci in qualche maniera ?

Per adesso ho risolto passando qualche parametro alla routine.
11.886 messaggi dal 09 febbraio 2002
Contributi
totti240282 ha scritto:

posso accederci in qualche maniera ?

No, e questo succede perché Asp.Net non può ripristinare lo stato dei controlli server. Non può farlo perché la richiesta che fai al web method non contiene i dati dei campi adibiti a quello scopo, come il viewstate e il valore corrente dei controlli stessi.
Tra l'altro, i page methods sono statici, quindi un'istanza della tua pagina neanche esiste.

Qui sei difronte ad una scelta:
  • decidi di abbracciare il web e di accettare il fatto che il protocollo HTTP è stateless e perciò rinunci a voler mantenere lo stato dei controlli server.
  • ti affidi completamente ad Asp.Net WebForms, che con il suo meccanismo di viewstate riesce a mantenere lo stato dei controlli attraverso i postback. In questo caso devi usare UpdatePanel e non $.ajax.


totti240282 ha scritto:

Per adesso ho risolto passando qualche parametro alla routine.

Così va bene.

ciao
Modificato da BrightSoul il 13 ottobre 2012 12.59 -

Enjoy learning and just keep making
93 messaggi dal 25 maggio 2005
in teoria si può accedere al context anche dal WebMethod, ma non so quanto convenga, poiché aumentano di parecchio i dati passati attraverso la chiamata Ajax.

Tantovale non usare Ajax credo.

Quindi, come ha detto BrightSoul, va benissimo passare alcuni parametri alla chiamata Ajax.

ciao
1.495 messaggi dal 27 dicembre 2005
Gluck ha scritto:
in teoria si può accedere al context anche dal WebMethod, ma non so quanto convenga, poiché aumentano di parecchio i dati passati attraverso la chiamata Ajax.

Tantovale non usare Ajax credo.

Quindi, come ha detto BrightSoul, va benissimo passare alcuni parametri alla chiamata Ajax.

ciao


Come si accede al context ?
Magari qualche volta mi potrà servire.
93 messaggi dal 25 maggio 2005
ma a cosa devi accedere di preciso?
Perché se si parla di dati in sessione, bene, altrimenti nisba....
1.495 messaggi dal 27 dicembre 2005
Accedere al valore di alcuni controlli come textbox o altri controlli.

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.