麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 開發 > AJAX > 正文

注冊起動腳本,asp.net ajax的一項重要功能!_ajax教程

2024-09-01 08:34:05
字體:
來源:轉載
供稿:網友

    最近的項目中一直在使用Atlas July CTP,自從Atlas正式更名后,連續推出了Beta和Beta2兩個版本,不過我一直在觀望,原因就是Beta版本不穩定而且升級太麻煩了。一日偶然看到了楊丹的這篇隨筆,忽然發現原來ScriptManager能注冊在客戶端部分刷新的UpdatePanel中注冊啟動后執行的JavaScript!這可是困擾了我非常長時間的一個問題!這樣不僅能在使用UpdatePanel的情況下使用Javascript彈出對話框,也能在研發使用Javascript腳本的服務器控件的時候,使控件的起動腳本得以執行,這樣原來的和UpdatePanel不兼容的控件能非常容易的改為AJAX enabled^_^。
    不過,令人不解的是不知道處于什么考慮,RegisterStartupScript函數竟然實現為了類的靜態函數,可是沒有ScriptManager的UpdatePanel更本不能執行啊,這樣還需要多打幾個字!另外,需要注意的是第一個參數是UpdatePanel的實例,如果在頁面中有多個UpdatePanel,如果每個UpdatePanel的UpdateMode都是“always”[默認值]的話,那么你使用那個UpdatePanel的實例作為參數都能;如果每個UpdaePanel的UpdateMode=conditional,那么你必須使用正在更新的那個UpdatePanel作為參數,這樣腳本才能起作用。下面是我作的一個簡單的示例:
頁面標記
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>




    Untitled Page


   


           
           
           

           
LinkButton

               
                       
                   


           
               
                   
                    LinkButton
               

           
           

       
                   

                   
Please waiting, retrieving data from server


                     
   


代碼
using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;

public partial class _Default : System.Web.UI.Page
{
  protected void Page_Load(object sender, EventArgs e)
  {
       
  }
    protected void LinkButton1_Click(object sender, EventArgs e)
    {
        System.Threading.Thread.Sleep(1000);
        TextBox1.Text = DateTime.Now.ToLongTimeString();
        TextBox2.Text = TextBox1.Text;
        string js = "alert(ok button1 clicked!)";
        Microsoft.Web.UI.ScriptManager.RegisterStartupScript(UpdatePanel2, this.GetType(), "btn1clicked", js, true);
    }
    protected void LinkButton2_Click(object sender, EventArgs e)
    {
        System.Threading.Thread.Sleep(900);
        TextBox2.Text = DateTime.Now.ToLongTimeString();
        TextBox1.Text = TextBox2.Text;
        string js = "alert(ok button 2 clicked!)";
   
        Microsoft.Web.UI.ScriptManager.RegisterStartupScript(UpdatePanel2, this.GetType(), "btn2clicked", js, true);
   
    }
}    BTW,我在使用時發現一個問題,不知道是個Bug還是我使用不當,我在調試中發現UpdatePanel.IsInPartialRendering的值始終是false!希望有高人指點一下:)。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 最新av在线播放 | 日本看片一区二区三区高清 | 久久国产成人午夜av浪潮 | 国产精品免费一区二区三区四区 | javhdfreejaⅴhd | 久久男人视频 | 免费专区 - 91爱爱 | 97精品视频在线观看 | 桥本有菜免费av一区二区三区 | 国产一区日韩精品 | 高清一区二区在线观看 | 欧美精品久久久久久久久久 | 国产精品久久久久久久av三级 | 亚洲国产精久久久久久久 | 欧美一级高潮 | 日本欧美一区二区 | a级在线 | 亚洲国产精品久久久 | 性 毛片 | 日本欧美一区二区 | 天天鲁在线视频免费观看 | 免费观看高清视频网站 | 久久爽久久爽久久av东京爽 | 久久青草热 | 日韩av官网| 亚洲成人播放 | 免费看毛片网站 | 九九色网站 | 特级毛片全部免费播放器 | 5xsq在线视频 | 国产激情精品一区二区三区 | 国产女同疯狂激烈互摸 | 精品国产91久久久久久久 | 日本一区二区不卡高清 | 91中文在线观看 | 免费国产一区二区视频 | 日本aaaa片毛片免费观看视频 | 中文字幕www | 激情小说激情电影 | av在线播放网址 | 久久久久亚洲视频 |