太多toolkit 沒有一一測試過,之後陸續有用到在更新。
目前測試用的版本:AJAX Control Toolkit — September 2011 Release (4.0)
太多toolkit 沒有一一測試過,之後陸續有用到在更新。
目前測試用的版本:AJAX Control Toolkit — September 2011 Release (4.0)
屬性 | 說明 |
CancelControlID | 取消控制項ID |
Drag | 是否可拖曳(預設false) |
DropShadow | 是否有陰影(預設false) |
OkControlID | 確定控制項ID |
OnOkScript | 觸發"確認"事件(前端) |
OnCancelScript | 觸發"取消"事件(前端) |
PopupControlID | 彈出視窗的控制項ID |
PopupDragHandleControlID | 可拖曳的控制項ID |
TargetControlID | 觸發彈出視窗的控制項ID |
X | 彈出視窗x座標位置(預設置中) |
Y | 彈出視窗y座標位置(預設置中) |
Animations | 效果展示(範例只做淡出) |
BackgroundCssClass | CSS背景處理 |
CSS:
介紹使用 Rob Conery - Textmate ,在使用 VS.NET 2010 ,在寫程式的時候,
感覺眼睛舒服了一些,整個VS.NET就是黑色背景,而Code是白色,關鍵字則是亮色,
非同步上傳檔案,這在現今許多網站都有這樣的需求,當畫面欄位很多時,且需要上傳較大的檔案時,不希望檔案到最後按下Submit時才開始上傳,這麼一來一瞬間資料量過大,不僅在用量尖峰時刻Server較負荷不了,當時的網路頻寬也容易吃緊,所以為什麼不能夠在使用者還在輸入資料時就在背後上傳檔案呢?於是這一類的解決方案就出現了,其實這個非同部的方式早也不是新的東西了,有第三方的元件可以達成,或有有人使用UploadPanel 配合FileUpload控制向來實作類似的效果。不過現在AJAX Control ToolKit 中提供的AsyncFileUpload 可以讓您輕易的做出這個效果。
在開發AJAX網頁的時候,頁面上一定要有一個ScriptManager,才能正常運作。
然而在AJAX Control Toolkit裡面,有一個ToolkitScriptManager,這東西主要是繼承ScriptManager來的。
善用 jQuery 的 Selector 可以輕鬆的實現常見的全選/全消功能。如下範例
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html> <head> <title> new document </title> <meta http-equiv="Content-Type" content="text/html; charset=big5"/> <meta name="author" content="Chui-Wen Chiu"> <script type = 『text/javascript' src=』jquery.js'></script> <script type = 『text/javascript'>
想要抓取動態產生的控制項的值,要利用到識別的 ID 所以在建立控制項的時候就要指定給它,要使用的時候使用父容器的 FindControl 方法找出控制項
protected void Page_Load(object sender, EventArgs e) { if (IsPostBack) { if ( this.ViewState["TextBoxAdded"] != null && (bool)this.ViewState["TextBoxAdded"] == true) { AddTextBox(); } } } //動態新增控制項 private void AddTextBox() { PlaceHolder1.Controls.Clear(); //先清除所有子控制項 TextBox textbox = new TextBox(); textbox.ID = "DynBox1";//重點是要給他一個ID PlaceHolder1.Controls.Add(textbox); this.ViewState["TextBoxAdded"] = true; } //事件觸發動態新增控制項 protected void Button1_Click(object sender, EventArgs e) { AddTextBox(); } //取值出來 protected void Button2_Click(object sender, EventArgs e) { TextBox tmpbox = PlaceHolder1.FindControl("DynBox1") as TextBox; Label1.Text = tmpbox.Text; }
延伸應用(產生多個TextBox):
由於使用者太習慣輸入完資料時,就按Enter鍵送出。
protected void Page_Load(object sender, EventArgs e) { //註冊JS this.txt1.Attributes.Add("onkeypress", "if( event.keyCode == 13 ) {" + this.Page.ClientScript.GetPostBackEventReference(this.btnTest1, "") + "}"); this.txt2.Attributes.Add("onkeypress", "if( event.keyCode == 13 ) {" + this.Page.ClientScript.GetPostBackEventReference(this.btnTest2, "") + "}"); }
這裡要注意一下,必須把Button的UseSubmitBehavior屬性設定為false,這樣這Button的Type則為button,否則 預設為submit
ASP.NET 的 LinkButton本身沒有 target屬性,所以先用以下的方式解決:
先創一個Page(open.aspx),放置一個名為LinkButton1的LinkButton元件