webForumDet fria alternativet

vänta-box medan gridden laddas

.NET

2 svar · 304 visningar · startad av h00karem

Medlem sedan mars 200524 inlägg
Frågan#1

Hej
Jag har en javascript-funktion som visar en div med texten "wait while loading"!
Jag kan anropa funktionen i <form id="Form1" method="post" runat="server" onsubmit="showWaitBox();">
då visas den så länge sidan laddas
om jag däremot har den i
<body OnLoad="showWaitBox();">
så visas den ju från sidan laddas och sedan "slår den aldrig av"
men nu vill jag att den ska visas medan jag laddar en gridd!
Alltså jag väljer något från en droplista och då laddar den en gridd som tar ett tag eftersom det e hundratals rader :OO Hur göra då?!
Tack på förhand
/K

Medlem sedan jan. 20001 372 inlägg
#2

Ett förslag, vet inte om det fungerar men kan vara värt att testa.

Börja med att sätta OnItemDataBound = "mygrid_databound" på din datagrid.

Sen lägger du följande i code-behind

public void mygrid_databound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e) {
	if(e.Item.ItemType == ListItemType.Footer){
		e.Item.Cells(0).Attributes.Add("onload", "hideWaitBox();")
	}
}

Eftersom jag är ganska kass på javascript så vet jag inte om det funkar med onload() på en TableCell, om det inte gör det så kan du ju lägga in nåt object som onload fungerar på.

ex

Label lb = new Label();
lb.Attributes.Add("onload", "hideWaitBox();");
e.Item.Cells(0).Controls.Add(lb);

Vet inte om det fungerar på en Label (span) heller men det är principen i alla fall.

Medlem sedan mars 200524 inlägg
#3

Hejsan
Nja den verkar strunta helt i det :(
Men det verkar som att den ska ta OnLoad på celler iaf

253 ms totalt · 4 externa anrop · v20260731065814-full.6fe65c25
122 ms — deklarationer (db)
0 ms — hämta statistik (cache)
123 ms — hämta tråd, inlägg och bilagor (db)
127 ms — ändringar (db)