日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

给gridview动态生成radiobutton添加OnCheckedChanged事件

發布時間:2025/6/15 编程问答 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 给gridview动态生成radiobutton添加OnCheckedChanged事件 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
在寫研究生系統審核功能的時候,有一個頁面的gridview動態生成四列radiobutton,在gridview控件外有四個 radiobutton分別控制這四列的全選中。那么當外面的某個全選按鈕選中后,改變gridview里面的radiobutton選擇,對應的全選按 鈕選中情況應該發生變化。為了實現該功能,需要在寫好了radiobutton的OnCheckedChanged監聽函數并添加到aspx頁面后,再在 gridview的RowDataBound事件中加入聲明。

aspx頁面部分代碼:

?

<asp:TemplateField HeaderText="學位類別" SortExpression="gdxw"><ItemTemplate><%# Eval("gdxw")%></ItemTemplate><ItemStyle HorizontalAlign="Center" /></asp:TemplateField><asp:TemplateField HeaderText="同意" SortExpression="xwkyqxf"><ItemTemplate><asp:RadioButton ID="TySy" runat="server" GroupName="bjyj" AutoPostBack="True" OnCheckedChanged="check_TySy" /></ItemTemplate><ItemStyle HorizontalAlign="Center" /></asp:TemplateField><asp:TemplateField HeaderText="不同意" SortExpression="zdkxxf"><ItemTemplate><asp:RadioButton ID="BtySy" runat="server" GroupName="bjyj" AutoPostBack="True" OnCheckedChanged="check_BtySy"/></ItemTemplate><ItemStyle HorizontalAlign="Center" /></asp:TemplateField><asp:TemplateField HeaderText="同意推遲" SortExpression="kkzyxkxf"><ItemTemplate><asp:RadioButton ID="TyTcsy" runat="server" GroupName="bjyj" AutoPostBack="True" OnCheckedChanged="chenk_TyTcsy" /></ItemTemplate><ItemStyle HorizontalAlign="Center" /></asp:TemplateField><asp:TemplateField HeaderText="棄權" SortExpression="xwkyqcj"><ItemTemplate><asp:RadioButton ID="Qq" runat="server" GroupName="bjyj" AutoPostBack="True" OnCheckedChanged="chenk_Qq" /></ItemTemplate><ItemStyle HorizontalAlign="Center" /></asp:TemplateField>

加入聲明代碼如下://給每個RadioButton1綁定setRadio事件
????????try
??????? {
??????????? ((RadioButton)e.Row.FindControl("TySy")).Attributes.Add("OnCheckedChanged",?"chenk_TySy");
??????????? ((RadioButton)e.Row.FindControl("BtySy")).Attributes.Add("OnCheckedChanged",?"chenk_BtySy");
??????????? ((RadioButton)e.Row.FindControl("TyTcsy")).Attributes.Add("OnCheckedChanged",?"chenk_TyTcsy");
??????????? ((RadioButton)e.Row.FindControl("Qq")).Attributes.Add("OnCheckedChanged",?"chenk_Qq");
??????? }
????????catch?(Exception)
??????? { }

OnCheckedChanged函數:

#region?授予選擇發生改變

????//同意授予發生變化
????protected?void?check_TySy(object?sender, EventArgs e)
??? {

????????//記錄同意授予項個數
????????int?t = gvData.Rows.Count;
????????for?(int?i =?0; i <= gvData.Rows.Count -?1; i++)
??????? {
??????????? RadioButton TySy = (RadioButton)gvData.Rows[i].Cells[5].FindControl("TySy");
????????????if?(TySy.Checked ==?true)
??????????? {//存在同意授予項
??????????????? QbBty.Checked =?false;
??????????????? QbTc.Checked =?false;
??????????????? QbQq.Checked =?false;
??????????? }
????????????else
??????????? {
??????????????? t--;
??????????? }
????????????//Response.Write("<script>window.alert('進入同意授予發生變化方法。')</script>");
??????? }
????????if?(t == gvData.Rows.Count)
??????? {//全為同意授予項
??????????? QbTy.Checked =?true;
??????? }
????????else
??????? {//存在非同意授予項
??????????? QbTy.Checked =?false;
??????? }
??? }

????//同意延遲授予發生變化
????protected?void?chenk_TyTcsy(object?sender, EventArgs e)
??? {
????????//記錄同意推遲授予項
????????int?t = gvData.Rows.Count;
????????//循環個同意推遲授予項
????????for?(int?i =?0; i <= gvData.Rows.Count -?1; i++)
??????? {
??????????? RadioButton TyTcsy = (RadioButton)gvData.Rows[i].Cells[7].FindControl("TyTcsy");
????????????if?(TyTcsy.Checked ==?true)
??????????? {//存在一個同意延遲授予項
??????????????? QbTy.Checked =?false;
??????????????? QbBty.Checked =?false;
??????????????? QbQq.Checked =?false;
??????????? }
????????????else
??????????? {
??????????????? t--;
??????????? }
??????? }
????????if?(t == gvData.Rows.Count)
??????? {//全為同意推遲授予項
??????????? QbTy.Checked =?true;
??????? }
????????else
??????? {//存在非同意延遲授予項
??????????? QbTy.Checked =?false;
??????? }
??? }

????//不同意授予發生變化
????protected?void?check_BtySy(object?sender, EventArgs e)
??? {
????????//記錄不同意授予個數
????????int?t = gvData.Rows.Count;

????????//循環個不同意授予項
????????for?(int?i =?0; i <= gvData.Rows.Count -?1; i++)
??????? {
??????????? RadioButton BtySy = (RadioButton)gvData.Rows[i].Cells[6].FindControl("BtySy");//取出個不同意授予項
????????????if?(BtySy.Checked ==?true)
??????????? {//存在一個不同意授予項則將其余全選項置為false
??????????????? QbTy.Checked =?false;
??????????????? QbTc.Checked =?false;
??????????????? QbQq.Checked =?false;
??????????? }
????????????else
??????????? {
??????????????? t--;
??????????? }
??????? }
????????//
????????if?(t == gvData.Rows.Count)
??????? {//全為不同意授予項
??????????? QbBty.Checked =?true;
??????? }
????????else
??????? {//存在非不同意授予項
??????????? QbBty.Checked =?false;
??????? }
??? }

????//棄權發生變化
????protected?void?chenk_Qq(object?sender, EventArgs e)
??? {
????????//記錄選中個數
????????int?t = gvData.Rows.Count;

????????//循環查看個選項
????????for?(int?i =?0; i <= gvData.Rows.Count -?1; i++)
??????? {
??????????? RadioButton Qq = (RadioButton)gvData.Rows[i].Cells[8].FindControl("Qq");//取出每一行的棄權項
????????????if?(Qq.Checked ==?true)
??????????? {//如果存在一個棄權項,則所有的全選都置為false
??????????????? QbTy.Checked =?false;
??????????????? QbBty.Checked =?false;
??????????????? QbTc.Checked =?false;
??????????? }
????????????else
??????????? {
??????????????? t--;
??????????? }
??????? }
????????if?(t == gvData.Rows.Count)
??????? {//全部選擇棄權
??????????? QbQq.Checked =?true;
??????? }
????????else
??????? {//存在非棄權項
??????????? QbQq.Checked =?false;
??????? }
??? }
????#endregion

總結

以上是生活随笔為你收集整理的给gridview动态生成radiobutton添加OnCheckedChanged事件的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。