重写RadioButtonList服务器控件的RenderItem方法,隐藏radio元素
来源:互联网 发布:网络棋牌刷分赚钱 编辑:程序博客网 时间:2024/06/13 04:37
思路:先判断浏览器是否为IE浏览器,如果是IE浏览器就将radio元素样式为width:0px;height:0px;若不是IE浏览器就将radio元素的样式设置为display:none。
//注释掉原来的RenderItem方法//base.RenderItem(itemType, repeatIndex, repeatInfo, writer);bool isIE = HttpContext.Current.Request.UserAgent.ToLower().IndexOf("msie") > 0;ListItem li = Items[repeatIndex];//回调函数的eventTargetstring name = this.ClientID.Replace('_','$')+"$"+repeatIndex.ToString();//用于radio元素的name属性string pname = this.ClientID.Replace('_','$');//用于radio元素的id属性及label标签的for属性string id = this.ClientID + "_" + repeatIndex.ToString();//定义当AutoPostBack=true时的回调string onclick = AutoPostBack?"onclick=\"javascript:setTimeout(\'__doPostBack(\\'"+name+"\\',\\'"+li.Value+"\\')\',0)\"":"";//SelectedCssClass和ItemCssClass是我增加的两个Css,分别用于选中项的label和未选中项的label标签的class。string css = li.Selected ? SelectedCssClass : ItemCssClass;//可以在标签外围增加新标签,如<div style=''>{0}{1}</div>string div = "{0}{1}";//若为IE浏览器style=width:0px;height:0px; 其他浏览器style=display:none;string radio = "<input type='radio' id='"+id+"' name='"+pname+"' value='"+li.Value+"'"+onclick+" style='"+(isIE?"width:0px;height:0px;":"display:none;")+"'/>";string label = "<label for='"+id+"' class='"+css+"'>"+li.Text+"</label>";writer.Write(string.Format(div,radio,label));
实测FF/IE浏览器效果相同
radio元素被隐藏,图中的按钮均为带css的label标签,当设置AutoPostBack=true时的回调也正常
- 重写RadioButtonList服务器控件的RenderItem方法,隐藏radio元素
- JS中的RadioButtonList(服务器控件)和Radio(html控件)操作
- JQuery 对服务器控件 DropdownList, RadioButtonList, CheckboxList的操作总结
- 简单重写类型为radio的input元素样式
- .net服务器控件,radio列表的使用
- RadioButtonList控件的简单介绍
- Js得到 服务器控件 radiobuttonlist选中值
- js radio 在弹出层 根据radio的状态来进行隐藏元素
- Radio控件的常用方法笔记
- radio控件清空数据的方法
- radio控件设置纵向布局的方法
- 隐藏元素的hide方法
- css 隐藏元素的方法
- RadioButtonList控制行显示隐藏的问题
- 方法的重载、隐藏与重写辨析
- 隐藏和重写方法的区别
- 成员变量的隐藏和方法重写
- 成员变量的隐藏和方法重写
- 使用命令wsimport构建WebService客户端
- RS232串口通信详解
- ubuntu下安装putty
- ORACLE忘记密码之后的操作
- Unity3D脚本中文系列教程(二)
- 重写RadioButtonList服务器控件的RenderItem方法,隐藏radio元素
- 验证数字的正则表达式集
- Cocos2d-x学习笔记
- 新手建站(一)
- 内核驱动小记(二)——Atheros AR8161
- 函数指针和指针函数以及函数指针数组
- Struts2 action之间传参 (转自sfm1314620)
- TCP/IP协议头部结构体
- linux下开启SSH,并且允许root用户远程登录,允许无密码登录