Zeki AKDOĞAN - Kişisel Web Sitesi Ana Sayfa | RSS RSS | İletişim

Javascript ile Ajax UpdatePanel Kontrolünü Tetikleme


Dert :
Web formumda bir adet update panel bulunuyor. Ve içinde grid kontrolüm var. Grid kontrolümdeki satırlara tıkladığımda pop-up pencerede satırın detay bilgilerini kullanıcıya sunuyorum. Kullanıcı pop-up pencerede değişiklik yapıp kaydet tuşuna bastığında pop-up pencerem kapanıyor. Kapanma olayıyla birlikte ana sayfamda bir javascript fonksiyonu tetikleniyor. Update Panel'imin içinde yer aalan gridimi refresh edip (sayfa postback olmadan) değişiklikleri görebilmek için nasıl bir yöntem izlemeliyim?

 

Derman :

Senaryomuzda yer alan soruna alakalı şöyle bir çözüm geliştirdim;

Evvela UpdatePanel'imizin yeniden yüklendiğinde hangi kodları çalıştıracağını yazıyoruz. UpdatePanel'in Load olayına kodlarımızı yazıyoruz;

protected void UpdatePanel1_Load(object sender, EventArgs e)
{

rgStockList.DataSource = new StockLogic(base.CompanyId).GetStockList();
rgStockList.DataBind();

}

Sonra javascript kodlarımıza geçiyoruz ve tetiklenecek yacascript fonsiyonu içinde günümüzün kahramanı __doPostBack()
fonksiyonunu kullanarek update panelimizin içeriğinin server tarafından tekrar render edilmesi talebinde bulunuyoruz.


function OnClientClose() {

__doPostBack('UpdatePanel1', '');

return false;

}

Kaynak

Yazılım | Yorum Ekle(0)| 11.08.2011 02:15:38
Etiketler: updatepanel javascript

Javascript kullanarak sayfadaki kontrolleri resetleme


HEAD tagları arasına aşağıdaki kodu eklemek ve herhangi bir butonun click olayında funksyonu çağırmak yeterli.
<input id="Button1" type='button' onclick='ClearAllControls()' value='Temizle'/>

 <script language="javascript" type='text/javascript'>

 
        function ClearAllControls()
        {
              for (i=0; i<document.forms[0].length; i++)
              {
                    doc = document.forms[0].elements[i];
                    switch (doc.type)
                    {
                        case "text" :
                                doc.value = "";
                                break;
                          case "checkbox" :
                                doc.checked = false;
                                break;   
                          case "radio" :
                                doc.checked = false;
                                break;               
                          case "select-one" :
doc.options[doc.selectedIndex].selected = false;
                                break;                     
                          case "select-multiple" :
                                while (doc.selectedIndex != -1)
                                {
                                      indx = doc.selectedIndex;
                                      doc.options[indx].selected = false;
                                }
                                doc.selected = false;
                                break;
                                   
                          default :
                                break;
                    }
              }
        }
 
</script>

Yazılım | Yorum Ekle(0)| 30.03.2010 01:27:47
Etiketler: javascript reset

CodeBehind kısmında javascript kullanımı



Public Shared Sub CreateMessageAlert(ByVal strMessage As String)
        Dim guidKey As Guid = Guid.NewGuid()
        Dim pg As Page = HttpContext.Current.Handler
        Dim strScript As String = “alert(‘” & strMessage & “‘);”
        pg.ClientScript.RegisterStartupScript(pg.GetType(), guidKey.ToString(), strScript, True)
    End Sub

Kategori belirtilmemiş | Yorum Ekle(0)| 04.03.2010 06:24:19
Etiketler: javascript

Update Panel içerisinde javascript kullanımı


//Codebehind tarafında javascriptimizi oluşturacak fonksyon
public void CreateMessageAlertInUpdatePanel(UpdatePanel up, string strMessage)
    {
        string strScript = "alert('" + strMessage + "');";
        Guid guidKey = Guid.NewGuid();
        ScriptManager.RegisterStartupScript(up, up.GetType(), guidKey.ToString(), strScript, true);
    }

// Kullanımı

CreateMessageAlertInUpdatePanel(Me.UpdatePanel1, "Merhaba")

Kişisel | Yorum Ekle(0)| 04.03.2010 06:22:37
Etiketler: updatepanel javascript

Ana Sayfa | RSS | İletişim
Zeki AKDOĞAN 2009 © Hiçbir hakkı saklı değildir.