ancora javascrip

riprendo il discorso frettolosamente aggiunto la scorsa volta sul blog:, http://blogs.aspitalia.com/nostromo/post654.aspx

inserire javascript in un datgrid (o in qualsiasi altro controllo) è più semplice di quello che sembra a prima vista,prendiamo il seguente frammento di codice:

JavaScript:News.NewsGallery_editGallery.disabled = true

è un frammento semplicissimo , disabilita l'oggetto NewsGallery_editGallery, nel suo caso un tag button inserito in un datgrid,da dove partire? se non servono i dati "provenienti" dal datagrid al momento della creazione del codice javascript, ci potremmo servire dell'evento ItemCreated

iteriamo la collezzione dei controlli fino a trovare il form , questa fase va fatta una sola volta e può essere inserita al difuori del ItemCreated

string formName = null;
foreach(System.Web.UI.Control i in this.Page.Controls )
{
if (i.GetType().ToString() == "System.Web.UI.HtmlControls.HtmlForm")
{
formName = ((HtmlForm)i).Name.ToString();
}
}

nell ItemCreated recuperiamo un riferimento al bottone da disabilitare
ctl = e.Item.Cells[0].Controls[1]

infine inizializziamo uno StringBuilder

StringBuilder sb = new StringBuilder("JavaScript:");
   sb.Append(formName);
   sb.Append(".");
   sb.Append(ctl .ClientID + ".disabled = true");
   removeGallery.Attributes.Add("onclick",sb.ToString());

removeGallery è il bottone alla cui pressione viene eseguito il frammento javascrip, per trovare il bottone si uso il solito metodo e.Item.Cells[0].Controls[1] o findControl

spero di non aver dimenticato nulla :) tra cut/paste ri rischia sempre di dimenticare qualcosa

Nella stessa categoria

Commenti

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

© 1998-2008 - nostromo - Il blog di Marco Leoncini

TagCloud
BLOG INFO
  • Post: 222
  • Commenti: 88
  • TrackBacks: 17
  • Feed blog e contenuti tecnici: RSS
  • Feed blog: RSS Atom OPML

MVP
CATEGORIE
I PIÙ LETTI DEL MESE
IN EVIDENZA