看板 C_Sharp 關於我們 聯絡資訊
※ 引述《moneylove (money)》之銘言: : 各位高手 : 我想請問一下 : 就是如果把控制項塞到gridview中(比如:checkbox) : 要用UpdatePanel裡面的trigger : 不要postback回去 id= checkbox : 想問一下 : 但在執行的時候 : 會抓不到gridview中的id : 請問有辦法解決嗎?? : 謝謝各位 放在TemplateField的Control 在吐給Client端的時候會把ID轉換 因在網頁中每個控制項的ID必須是獨立的 因此若要把GridView中控制項設成Trigger,要單獨抓出來做處理 protected void Page_Load(object sender, EventArgs e) { foreach (GridViewRow gvRow in GridView1.Rows) { if (gvRow.RowIndex == 3) //要動態添加Trigger的列數 { CheckBox cb = gvRow.FindControl("CheckBox1") as CheckBox; cb.AutoPostBack = true; //設為AutoPostBack AsyncPostBackTrigger trigger = new AsyncPostBackTrigger(); trigger.ControlID = cb.UniqueID; //抓取實體ID (對應html_name) this.UpdatePanel1.Triggers.Add(trigger); } } if (this.ScriptManager1.IsInAsyncPostBack) UpdatePanel1.GetType().GetMethod("Initialize", BindingFlags.NonPublic | BindingFlags.Instance).Invoke(UpdatePanel1, null); } 不是很清楚樓主說的 [不要postback回去 id= checkbox] 是什麼意思 上面的做法是把GridView中的某個控制項設為 要更新該UpdatePanel1的Trigger 大致上的作法都大同小異 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 111.249.140.101 ※ 編輯: ThreeDay0905 來自: 111.249.140.101 (09/19 16:28)