[ dusans @ 25.11.2009. 11:53 ] @
Imam par pitanja u vezi Ajax-a u ASP.Net-u.

1. Koji je nalakši način da pratim saobrćaj prilikom ajax poziva, šta se dobija nazad od servera prilikom ajax postback-a.
Da li ima nekih alata preko kojih je ovo najlakše pratiti?

2. Na stranici imam nekoliko update panela. Inicijalno su ovi paneli postavljeni da se updejtuju uvek prilikom svakog ajax requesta.
Pošto se sadržaj tih panela gradi totalno dinamički, ne mogu da deklarišem statički u aspx-u trigere na koje će okidati njihov update.
Moje pitanje je da ako dinamički menjam trigere za update (dodajem, brišem, menjam update mode panela) u okviru ajax postbacka,
da li će se sve to dobro da radi bez obzira što na primer inicijalno nije bilo trigera ili je bio drugačiji update mode za update panel?
Znači, da li Ajax podržava ovo što sam naveo, da li zna da propagira ove promene u trigerima i panelima i na klijent tako da sve to funkcioniše?

Pozdrav!
[ deerbeer @ 25.11.2009. 12:30 ] @
1.) Nema najlakseg nacina . Stvar je vrlo prosta . Sav html koji je je u UpdatePanelu ce se osvezavati
samim tim to ti je mera saobracaja/protoka izmedju asp strane i servera .
Tj. ako te bas zanimaju svi podaci mozes koristiti Fiddler za inspekciju saobracaja

2.) Sve zavisi kako dodajes nove kontrole u Update panel .Uslov je da te kontrole budu serverske tj. sa runtime='server' atributom .
Ne verujem da ce ovo da radi sa vanila html kodom koji mozes da renderujes usput
Sve sto imas deklarativno na asp strani imas i na codebehind :

Code:
 
<asp:UpdatePanel ID="UpdatePanel2" runat="server"   UpdateMode="Conditional">
 <ContentTemplate>
     <asp:Label ID="Label2" runat="server" ForeColor="red" />                          
</ContentTemplate>
<Triggers>
    <asp:AsyncPostBackTrigger ControlID="Button1"  EventName="Click" /> 
</Triggers>
</asp:UpdatePanel> 



Dodavanje u Content template prvog UpdatePanela
Code:

  Button btn= new Button() ; 
  btn.ID= "BtnID" ; 
  UpdatePanel1.ContentTemplateContainer.Controls.Add(btn) ; 


Menjanje tj.dinamicko dodavanje trigera u drugom UpdatePanelu :

Code:
 
  AsyncPostBackTrigger s = new AsyncPostBackTrigger(); 
  // ili PostBackTrigger s = new PostBackTrigger() ; 
  s.ControlID = "btnID" ; 
  s.EventName ="Click" ; 
  UpdatePanel2.Triggers.Add(s) ; 


Naravno da bi neki eventi radili njihove kontrole moraju da imaju setovan AutoPostBack na true



[ dusans @ 25.11.2009. 12:33 ] @
Hvala na odgovoru, znaci to bi trebalo da radi.

Pozdrav!
[ radicr @ 14.01.2010. 08:23 ] @
Malo je kasno, u vezi pitanja #1 ima jedan dobar alat za IE kojim moze da se gleda request i response, cak i po update panelima.
Moze da bude korisno nekom http://projects.nikhilk.net/WebDevHelper