RadioButtonList绑定后台数据,触发点击事件

首先前台页面放置一个RadioButtonList 控件

<asp:RadioButtonList runat="server" ID="RadioButtonList1" BorderStyle="None" RepeatColumns="3" CssClass=""

RepeatLayout="Flow" AutoPostBack="true" OnSelectedIndexChanged="RadioButtonList1_SelectedIndexChanged">

</asp:RadioButtonList>

.cs文件 后台绑定数据

namespace BTApp

{

public partial class Technology : System.Web.UI.Page

{

string Id;

protected void Page_Load(object sender, EventArgs e)

{

if (!IsPostBack)

{

AspNetPager1.PageSize = 10;

if (Request.QueryString["Id"] != null)

{

Id = Request.QueryString["Id"];

}

else

{ Id = ""; }

GetDataBind(Id);

DropDownListDataBind();

}

}

//RadioButtonList绑定后台数据

private void DropDownListDataBind()

{

ExpertInfoBLL bll = new ExpertInfoBLL();

DataTable dt = bll.GetDepInfo();

foreach (DataRow dr in dt.Rows)

{

RadioButtonList1.Items.Add(dr["Name"].ToString());//循环读出数据库的数据

}

this.RadioButtonList1.DataSource = dt;

this.RadioButtonList1.DataTextField = "Name";

this.RadioButtonList1.DataValueField = "Id";

this.RadioButtonList1.RepeatDirection = RepeatDirection.Horizontal;

this.RadioButtonList1.DataBind();

}

private void GetDataBind(string Id)

{

//这里写解码和数据库返回结果

TechnologyBLL bll = new TechnologyBLL();

string strWhere = " 1=1 ";

if (Id != "" && Id != null)

{

strWhere += string.Format(" and a.Depinfo_Id = ‘{0}‘", Id);

}

AspNetPager1.RecordCount = bll.GetCountList(strWhere);

//绑定数据

DataTable dt = bll.GetList((AspNetPager1.CurrentPageIndex - 1) * AspNetPager1.PageSize, AspNetPager1.PageSize, strWhere, "CreateTime");

this.Repeater1.DataSource = dt;

this.Repeater1.DataBind();

}

protected void AspNetPager1_PageChanged(object sender, EventArgs e)

{

GetDataBind(Id);

}

//根据选择单选按钮的不同id,触发事件

protected void RadioButtonList1_SelectedIndexChanged(object sender, EventArgs e)

{

string Id;

Id = RadioButtonList1.SelectedValue;

GetDataBind(Id);

}

}

}

TechnologyBLL 层的方法

namespace BTAppBLL

{

public class TechnologyBLL

{

TechnologyDAL dal = new TechnologyDAL();

public DataTable GetList(int startPage, int pageSize, string where, string orderby)

{

DataTable dTable = dal.GetList(startPage, pageSize, where, orderby);

return dTable;

}

public int GetCountList(string where)

{

int record = dal.GetCountList(where);

return record;

}

public DataTable GetListShow(string TechnologyId)

{

DataTable dTable = dal.GetModel(TechnologyId);

return dTable;

}

public DataTable GetPicture(string TechnologyId)

{

DataTable dTable = dal.GetPicture(TechnologyId);

return dTable;

}

}

}

TechnologyDAL层的方法

namespace BTAppDAL

{

public class TechnologyDAL

{

public DataTable GetList(int startPage, int pageSize, string where, string orderby)

{

string strSql = string.Format("SELECT a.TechnologyId,a.TechnologyName,a.Summarize,a.Effect,a.MainPoint,a.AppropriateArea,a.Attention,a.CreateTime,a.CreatUser,a.UpdateTime,b.Name FROM Technology AS a \n" +

"left join Sys_DepInfo AS b ON a.Depinfo_Id=b.Id \n" +

"where a.IsActive=‘1‘ and {0} ", where);

string proc = "proc_CommonPagerWithStatement";

SqlConnection con = SqlDbHelper.Connection;

SqlParameter[] sp = { new SqlParameter("@intStartIndex", startPage),

new SqlParameter("@intPageSize", pageSize),

new SqlParameter("@varStatement", strSql),

new SqlParameter("@varSortExpression", orderby+" DESC") };

DataTable dt = SqlDbHelper.GetDataSet(proc, sp, con);

return dt;

}

public int GetCountList(string where)

{

int countRecord = 0;

string strSql = string.Format("select COUNT(TechnologyId) as countRecord from(SELECT  a.TechnologyId,a.TechnologyName,a.Summarize,a.Effect,a.MainPoint,a.AppropriateArea,a.Attention,a.CreateTime,a.CreatUser,a.UpdateTime,b.Name FROM Technology AS
a \n" +

"left join Sys_DepInfo AS b ON a.Depinfo_Id=b.Id \n" +

"where a.IsActive=‘1‘ and {0} ) as c", where);

SqlConnection con = SqlDbHelper.Connection;

try

{

if (con.State == System.Data.ConnectionState.Closed)

con.Open();

DataTable dt = SqlDbHelper.GetDataTable(strSql);

if (dt.Rows.Count > 0)

countRecord = int.Parse(dt.Rows[0]["countRecord"].ToString());

}

catch (Exception)

{

throw;

}

finally

{

if (con.State == ConnectionState.Open)

{

con.Close();

}

}

return countRecord;

}

public DataTable GetModel(string TechnologyId)

{

string strSql = string.Format("SELECT a.TechnologyId,a.TechnologyName,a.Summarize,a.Effect,a.MainPoint,a.AppropriateArea,a.Attention,a.CreateTime,a.CreatUser,a.UpdateTime,b.Name FROM Technology AS a \n" +

"left join Sys_DepInfo AS b ON a.Depinfo_Id=b.Id \n" +

"where a.IsActive=‘1‘ and a.TechnologyId  = ‘{0}‘ ", TechnologyId);

DataTable dataTable = SqlDbHelper.GetDataTable(strSql);

return dataTable;

}

public DataTable GetPicture(string TechnologyId)

{

string strSql = string.Format("SELECT TOP 5 a.Files_Id,a.Files_Name,a.Files_Path FROM dbo.Com_Files AS a \n" +

"LEFT JOIN dbo.Technology AS b ON a.ForeignKey_Id=b.TechnologyId \n" +

"WHERE b.IsActive=1 and a.ForeignKey_Id  = ‘{0}‘ ", TechnologyId);

DataTable dataTable = SqlDbHelper.GetDataTable(strSql);

return dataTable;

}

}

}

ExpertInfoBLL 层的方法

public DataTable GetDepInfo()

{

DataTable dTable = dal.GetDepInfo();

return dTable;

}

ExpertInfoDAL层的方法

public DataTable GetDepInfo()

{

try

{

StringBuilder str = new StringBuilder(@"SELECT Id,Name FROM dbo.Sys_DepInfo WHERE Is_Active=‘1‘ AND DepinfoType=‘1‘");

DataTable data = SqlDbHelper.GetDataTable(str.ToString());

if (data.Rows.Count > 0)

{

return data;

}

else

{

return null;

}

}

catch (Exception)

{

return null;

}

}

在页面加载的时候调用DropDownListDataBind()方法

触发RadioButtonList的点击事件

protected void RadioButtonList1_SelectedIndexChanged(object sender, EventArgs e)

{

string Id;

Id = RadioButtonList1.SelectedValue;

GetDataBind(Id);

}

既可以实现点击某个单选按钮,并触发事件

时间: 2024-10-24 02:19:13

RadioButtonList绑定后台数据,触发点击事件的相关文章

解决jQuery ajax动态新增节点无法触发点击事件的问题

在写ajax加载数据的时候发现,后面添加进来的demo节点元素,失去了之前的点击事件.为什么点击事件失效,我们该怎么去解决呢? 其实最简单的方法就是直接在标签中写onclick="",但是这样写其实是有点low的,最好的方式还是通过给类名绑定一个click事件. 解决jQuery ajax动态新增节点无法触发事件问题的两种解决方法,为了达到更好的演示效果,假设在某个页面的body下有以下结构的代码: 1 <ul id="demo"> 2 <li c

解决JavaScript拖动时同时触发点击事件的BUG

在做在线地图项目的时候,在给marker点绑定事件时,因为有点击事件click,同时又存在拖动dragEnd事件,首先没有重大缺陷,就是在用户在点击的时候,有时候本想是点击,但是他触发了drag的事件,造成不好的用户体验 bug的原因 一个完整的click事件是包含 mousedown,mouseup 两个事件的,而拖拽一个元素时,包含下面三个事件: mousedown,mousemove,mouseup, 所以我们在拖拽一个元素结束后,如果此元素上面绑定了点击事件, 就会同时触发元素的点击事件

view.performClick()触发点击事件

1.主要作用 自动触发控件的点击事件 2.界面的布局文件  activity_main.xml <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_h

Mint-ui中loadmore(上拉加载下拉刷新)组件在ios中滑动会触发点击事件的解决方法

bug说明: Mint-ui中loadmore(上拉加载下拉刷新)组件 在 使用fastclick的情况下 ,在ios设备中滑动会触发点击事件: 解决方法: 我是按需引入,去项目中找到loadmore下的index.js,全部引入的要找mint下面mint-ui.common.js 路径如下:你的项目名/node_modules\mint-ui\lib\loadmore\index.js 搜索 handleTouchEnd ,记得写event进去 handleTouchEnd: function

防止滑动的时候触发点击事件

手机端在滑动过程中容易引发点击事件 解决方案: 重新封装一个点击函数 //防止滑动的时候触发点击事件 function tap(sprite, cb) { var tapStartTime = 0, tapEndTime = 0, tapTime = 300, //tap等待时间,在此事件下松开可触发方法 tapStartClientX = 0, tapStartClientY = 0, tapEndClientX = 0, tapEndClientY = 0, tapScollHeight =

触发点击事件,接受后台参数,并把隐藏的div显示出来

1点击事件 1.1重点112和114行,112用的是正则表达式,114是加一些查找的限制,如是中文并且得3个中文字符才会自动查询.没有这些限制的话,键盘敲一次,就会查询一次,特别麻烦!!! 1.2 注意json传参数的方式 2.1接受后台参数 先把要查询的公司名字发送给后台,通过模糊查询返回一个lis给前端 把查询到的值通过不同的id.来接受. 3.1并把隐藏的div显示出来 这里用 $("#id").show();是显示不了的.因为在要显示的字段前已经被 220行这句话给全部隐藏了

click事件的累加绑定,绑定一次点击事件,执行多次

最近做项目为一个添加按钮绑定点击事件,很简单的一个事情,于是我按照通常做法找到元素,使用jquery的on()方法为元素绑定了点击事件,点击同时发送请求.完成后看效果,第一次点击没有问题.再一次点击后发现发送了两次请求,后面再点击发现请求的数量越来越多.这时我初步判断可能是元素有多个或是多次调用了方法,但找了一遍,发现只为一个元素绑定了事件,且只调用了一次.后来通过查资料才知道是点击事件被累加绑定了!那到底什么是累加绑定呢?什么时候会发生累加绑定?累加绑定后该如何解决呢?下面我就通过这三个问题来

button按钮触发点击事件后出现自动跳转问题

在项目中遇到在点击+号按钮后出现跳转.该button在form表单内,分析原因得知,触发事件后button按钮自动提交了表单,从而出现跳转. 查找手册得知button type有三个属性值,其中默认为submit,所以在未添加type属性时,button默认为submit. 此问题在button中添加type="button"则恢复正常. 值 描述 submit 默认.按钮是提交按钮. button 按钮时可点击的按钮. reset 按钮是重置按钮(清空数据). 原文地址:https:

原创:微信小程序bindtap绑定html元素点击事件

什么是事件? 事件是视图层到逻辑层的通讯方式. 事件可以将用户的行为反馈到逻辑层进行处理. 详解(以常见的tap点击事情为例) 模板.wxml代码: <view id="tapTest" data-hi="WeChat" bindtap="tapName"> Click me! </view> JS文件代码: Page({ data:{ ... }, onload:function(){ ... }, tapName: f