总结_CheckBoxList js中

前台aspx文件
C#代码
  1.  1 <%@ Page Language="C#" AutoEventWireup="true" CodeFile="chkandrdo.aspx.cs" Inherits="chkandrdo" %>   
  2.  2    
  3.  3 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">   
  4.  4    
  5.  5 <html xmlns="http://www.w3.org/1999/xhtml" >   
  6.  6 <head runat="server">   
  7.  7     <title>CheckBoxList,RadioButtonList,checkbox,radio等在控件在js中的调用</title>   
  8.  8 </head>   
  9.  9 <body>   
  10. 10     <form id="form1" runat="server">   
  11. 11     <div>   
  12. 12         <%--服务器端控件--%>   
  13. 13         <asp:CheckBoxList ID="chkBox1" runat="server" οnclick="javascript:CheckASP(this);"></asp:CheckBoxList><br/>   
  14. 14         <asp:RadioButtonList ID="radButList" runat="server" onClick="javascript:Vadaitorvalue(this);"></asp:RadioButtonList><br/>   
  15. 15         <asp:Button ID="btnCheck" runat="server" Text=" 检 测 " OnClientClick="return CheckValue();" OnClick="btnCheck_Click"/><br/>   
  16. 16         <%--服务器端控件--%>   
  17. 17         <br/><br/><br/>   
  18. 18            
  19. 19         <%--由HTMLControl转化来的服务器控件--%>   
  20. 20         <a href="javascript:CheckAll();">全选</a> <a href="javascript:Reservall();">反选</a>.   
  21. 21         <br/><br/>   
  22. 22         <input id="chkBox2" runat="server" type="checkbox"/><br /><%--这里我设置了name属性,但是在浏览器下,这个name属性却变成了和ID同值,不知道怎么在客户端中取得这个值。--%>   
  23. 23         <input id="chkBox3" runat="server" type="checkbox" οnclick="javascript:CheckChkBoxValue("chkBox3");" /><br />   
  24. 24         <input id="radButList2" runat="server" type="radio" name="radButList2Name"/>海阔<br />   
  25. 25         <input id="radButList3" runat="server" type="radio" name="radButList2Name"/>天空<br />   
  26. 26         <input id="btnCheck2" type="button" value=" 检 测 " runat="server" onserverclick="btnCheck2_ServerClick" /><br />   
  27. 27         <%--由HTMLControl转化来的服务器控件--%>   
  28. 28         <br/><br/><br/>   
  29. 29         <a href="javascript:CheckAllHtmlCheckBox('CheckboxProvience');">全选</a> <a href="javascript:ReservallCheckBox('CheckboxProvience');">反选</a>.   
  30. 30         <br/><br/>   
  31. 31         <input id="Checkbox1" type="checkbox"  name="CheckboxProvience"/><br />   
  32. 32         <input id="Checkbox2" type="checkbox"  name="CheckboxProvience"/><br />   
  33. 33         <input id="Checkbox3" type="checkbox"  name="CheckboxProvience"/><br />   
  34. 34         <input id="Radio2" type="radio" name="Provience" />   
  35. 35         <input id="Radio1" type="radio" name="Provience" /></div>   
  36. 36     </form>   
  37. 37 </body>   
  38. 38 </html>   
  39.   
  40. js 文件   
  41.   1     <script language="javascript" type="text/javascript">   
  42.   2        
  43.   3         function CheckASP(object)   
  44.   4         {   
  45.   5             //alert(object.length); //这里我们得不到,原因是在客户端生成的代码改变了   
  46.   6             //for(var i=0;i<object.length;i++)   
  47.   7             //if(object[i].checked)   
  48.   8             //alert(object[i].value);   
  49.   9                
  50.  10             //如果这里我们想得到要选中的值,方法还是有的,但是和常规的有所不同   
  51.  11             var chkInput = object.getElementsByTagName("INPUT");   
  52.  12             var chkLable = object.getElementsByTagName("Label");   
  53.  13             for(var i=0;i<chkInput.length;i++)   
  54.  14             {   
  55.  15                 if(chkInput[i].checked)   
  56.  16                 {   
  57.  17                     alert(chkLable[i].innerHTML);   
  58.  18                 }   
  59.  19             }   
  60.  20         }   
  61.  21            
  62.  22        function Vadaitorvalue(object)   
  63.  23        {   
  64.  24             var radInput = object.getElementsByTagName("INPUT");   
  65.  25             var radLable = object.getElementsByTagName("Label");   
  66.  26                
  67.  27             for(var i=0;i<radInput.length;i++)   
  68.  28             {   
  69.  29                 if(radInput[i].checked)   
  70.  30                 {   
  71.  31                     alert(radLable[i].innerHTML);   
  72.  32                 }   
  73.  33             }   
  74.  34                
  75.  35        }   
  76.  36    
  77.  37            
  78.  38         function CheckValue()   
  79.  39         {   
  80.  40             //在JS端调用CheckBoxList   
  81.  41             var chkObject = document.getElementById('<%=chkBox1.ClientID%>');   
  82.  42             var chkInput =chkObject.getElementsByTagName("INPUT");   
  83.  43             for(var i=0;i<chkInput.length;i++)   
  84.  44             {   
  85.  45                 if(chkInput[i].checked)   
  86.  46                 {   
  87.  47                     alert(chkInput[i].value);// 这里我们只能得到这个复选框中是否存在选中的项目,而不能在客户端得到选中项的值,而且这个也和其它的控件有所不同.   
  88.  48                     return true;   
  89.  49                 }   
  90.  50             }   
  91.  51                
  92.  52             //在Js端调用RadioButtonList   
  93.  53             var rdoObject = document.getElementById("radButList");   
  94.  54             var rdoInput  = rdoObject.getElementsByTagName("INPUT");   
  95.  55             for(var i=0;i<rdoInput.length;i++)   
  96.  56             {   
  97.  57                 if(rdoInput[i].checked)   
  98.  58                 {   
  99.  59                     alert(rdoInput[i].value);   
  100.  60                     return true;   
  101.  61                 }   
  102.  62             }   
  103.  63             return false;   
  104.  64         }   
  105.  65            
  106.  66         function CheckAll()   
  107.  67         {   
  108.  68             var object = document.getElementsByName("Region"); //不能用document.getElementsByName("Provience")来得到这里的值,如果我想要获得这个name为provience的全部值,我要怎么做呢??   
  109.  69             alert(object.length);   
  110.  70                
  111.  71             //在这里始终不能取得由HTML控件CheckBox转化过来的WebControl的所有个数,不知道这个怎么解决。   
  112.  72                
  113.  73             //取得所有由HTML转化过来的WebControl的   
  114.  74             var objet = document.getElementsByName("radButList2Name");   
  115.  75             for(var i=0;i<objet.length;i++)   
  116.  76             {   
  117.  77                 if(objet[i].checked)   
  118.  78                 alert(objet[i].value);   
  119.  79             }   
  120.  80         }   
  121.  81            
  122.  82         function Reservall()   
  123.  83         {   
  124.  84             //由于这个由Html转化过来的服务器控件的名字不能确定,所以这个也不能得到反选    
  125.  85             //后台cs文件中对于由html转化过来的服务器控件的明明有个name属性,不知道为什么这里就是不能设置   
  126.  86         }   
  127.  87            
  128.  88         function changeidd(str)   
  129.  89         {   
  130.  90             alert(str);   
  131.  91         }   
  132.  92            
  133.  93         function CheckChkBoxValue(object)   
  134.  94         {   
  135.  95             alert(object.value);   
  136.  96             alert(object.getAttribute("Region"));//这里竟然可以得到这个Provience  ,但是还是不能得到全部的有region这个域的个数。   
  137.  97 //            var ob= document.getArrtibute("Region");   
  138.  98 //            alert(ob.length);   
  139.  99         }   
  140. 100            
  141. 101         function CheckAllHtmlCheckBox(obj)   
  142. 102         {   
  143. 103             var object = document.getElementsByName(obj);   
  144. 104             for(var i=0;i<object.length;i++)   
  145. 105                 {   
  146. 106                     object[i].checked=true;   
  147. 107                 }   
  148. 108         }   
  149. 109            
  150. 110        function ReservallCheckBox(obj)   
  151. 111        {   
  152. 112             var object = document.getElementsByName(obj);   
  153. 113             for(var i=0;i<object.length;i++)   
  154. 114             {   
  155. 115                 object[i].checked=!object[i].checked;   
  156. 116             }   
  157. 117        }   
  158. 118           
  159. 119     </script>   
  160.   
  161. 后台cs文件   
  162.   
  163.  1 using System;   
  164.  2 using System.Data;   
  165.  3 using System.Configuration;   
  166.  4 using System.Collections;   
  167.  5 using System.Web;   
  168.  6 using System.Web.Security;   
  169.  7 using System.Web.UI;   
  170.  8 using System.Web.UI.WebControls;   
  171.  9 using System.Web.UI.WebControls.WebParts;   
  172. 10 using System.Web.UI.HtmlControls;   
  173. 11 using System.Data.SqlClient;   
  174. 12    
  175. 13 public partial class chkandrdo : System.Web.UI.Page   
  176. 14 {   
  177. 15     protected void Page_Load(object sender, EventArgs e)   
  178. 16     {   
  179. 17         //WebControl -> CheckBoxList   
  180. 18         if (!Page.IsPostBack)   
  181. 19             BindchkBox1();   
  182. 20         //WebControl -> RadioButtonList   
  183. 21         if (!Page.IsPostBack)   
  184. 22             BindradButList();   
  185. 23    
  186. 24         //HTMLControl -> ServerControl -checkbox   
  187. 25         if (!Page.IsPostBack)   
  188. 26             BindServerCheckBox();   
  189. 27    
  190. 28     }   
  191. 29    
  192. 30    
  193. 31     public void BindchkBox1()   
  194. 32     {   
  195. 33         ListItem li = new ListItem("江苏""JS");   
  196. 34         chkBox1.Items.Insert(0, li);   
  197. 35         li = new ListItem("上海""SH");   
  198. 36         chkBox1.Items.Insert(0, li);   
  199. 37     }   
  200. 38    
  201. 39     protected void btnCheck_Click(object sender, EventArgs e)   
  202. 40     {   
  203. 41         for (int i = 0; i < chkBox1.Items.Count; i++)   
  204. 42         {   
  205. 43             if (chkBox1.Items[i].Selected)   
  206. 44                 Response.Write(chkBox1.Items[i].Value);   
  207. 45         }   
  208. 46    
  209. 47         for (int i = 0; i < radButList.Items.Count; i++)   
  210. 48         {   
  211. 49             if (radButList.Items[i].Selected)   
  212. 50                 Response.Write(radButList.Items[i].Value);   
  213. 51         }   
  214. 52     }   
  215. 53    
  216. 54    
  217. 55     protected void BindradButList()   
  218. 56     {   
  219. 57         ListItem li = new ListItem("南通""NT");   
  220. 58         radButList.Items.Insert(0, li);   
  221. 59         li = new ListItem("苏州""SZ");   
  222. 60         radButList.Items.Insert(0, li);   
  223. 61     }   
  224. 62    
  225. 63     protected void BindServerCheckBox()   
  226. 64     {   
  227. 65         chkBox2.Attributes.Add("Region""Provience");   
  228. 66         chkBox2.Attributes.Add("onclick","changeidd('ddd');");//这里我为chkBox2注册了一个事件   
  229. 67         chkBox3.Value = "SH";   
  230. 68         chkBox3.Attributes.Add("Region""Provience");   
  231. 69    
  232. 70         radButList2.Value = "海阔";   
  233. 71         Response.Write(radButList2.TagName);//得到input   
  234. 72         radButList3.Value = "天空";   
  235. 73         chkBox2.Name = "RadioButtonListArr";//这里明明可以设置name 属性,但是却没有什么作用,不知道为什么???   
  236. 74         chkBox3.Name = "RadioButtonListArr";   
  237. 75     }   
  238. 76    
  239. 77     protected void btnCheck2_ServerClick(object sender, EventArgs e)   
  240. 78     {   
  241. 79         Response.Write(chkBox2.Value);//但是如果我想得到所有选中的由HTML转化过来的服务器控件的值,我该怎么办呢??   
  242. 80         Response.Write(Request.Form["radButList2Name"]);   
  243. 81     }   
  244. 82 }  
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值