Aprire un popup su una colonna di un datagrid

In un recente progetto ho avuto la necessità di inserire su una colonna di un datagrid un link ad un popup di dettaglio del prodotto relativo alla riga corrente.

Utilizzando il controllo asp:HyperLinkColumn e un po' di codice JS nella proprietà DataNavigateUrlFormatString la cosa è piuttosto semplice:

<asp:HyperLinkColumn DataTextField="Campo" DataNavigateUrlField="id" DataNavigateUrlFormatString="javascript:popwin=window.open('link.aspx?id={0}',null,'width=692,height=500,scrollbars=1'); void(''); " />

L'utilizzo di void(''); all'interno della funzione JS serve per evitare che dopo aver premuto il link al popup nella finestra principale appaia [object]

Naturalmente se la cosa dovesse servire in più parti del progetto conviene inserire la funzione window.open in un .js esterno.

Nella stessa categoria

Commenti
rickyvr scrive:
Aprire un popup su una colonna di un datagrid -

Al posto di void(''); si può mettere return false; per indicare al browser che l'evento onClick non deve avere seguito.

Ciao, Ricky.
04/02/2005 ore 15.18 | 2 risposte
Kappa scrive:
04/02/2005 ore 15.24 | 1 risposta
rickyvr scrive:
Re: Aprire un popup su una colonna di un datagrid -

La cosa ha validità generale per tutti gli eventi utente del client: il click del mouse, un tasto premuto, ecc...

In taluni casi, come per esempio in quello di visualizzazione di una message box di conferma, il metodo invocato ritorna direttamente un valore booleano (window.open ritorna invece una reference alla nuova finestra) e quindi, per bloccare l'evento, basta scrivere:

return confirm("Sei sicuro di voler preocedere con questa operazione?");


Nell'esempio proposto viene ritornato false quando non si dà conferma, viene ritornato true quando si dà l'OK.

Ciao, Ricky.

Modificato da rickyvr il 04 febbraio 2005 15.59 -
04/02/2005 ore 15.59

Aggiungi un nuovo commento »»»
Per inserire un commento, devi registrarti alla nostra community.

© 1998-2008 - K-Blog - Il blog di Massimo "Kappa" Cappellesso

TagCloud
BLOG INFO
  • Post: 77
  • Commenti: 20
  • TrackBacks: 10
  • Feed blog e contenuti tecnici: RSS
  • Feed blog: RSS Atom OPML
CATEGORIE
I PIÙ LETTI DEL MESE
IN EVIDENZA