DataGrid 完全攻略之八 (选择DataGrid中的CheckBox控件后该行背景变色)
2005-10-12 17:46
453 查看
在网络开发中,经常遇到需要使用ASP.NET与javascript联合进行控制的情况。在本篇中,将使用DataGrid进行数据绑定,使用javascript控制当选中其中的checkbox时,该行颜色改变。
首先,在页面中创建一个DataGrid控件,并设置其模板。
<asp:DataGrid id="DataGrid1" runat="server" AutoGenerateColumns="False">
<Columns>
<asp:TemplateColumn>
<ItemTemplate>
<asp:CheckBox id="checkbox1" Runat ="server"></asp:CheckBox>
<asp:Label runat="server" Text='<%# DataBinder.Eval(Container, "DataItem") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateColumn>
</Columns>
</asp:DataGrid>
第二,在页面中的<head></head>中编写javascript脚本函数,进行CheckBox的判断和颜色改变的控制。
<script>
function checkme(obj,tr){
if(obj.checked)
tr.style.backgroundColor='blue';
else
tr.style.backgroundColor='';
}
</script>
第三,在Page_Load事件中为DataGrid绑定数据,并关联CheckBox的javascript脚本。
private void Page_Load(object sender, System.EventArgs e)
{
// Put user code to initialize the page here
if(!IsPostBack)
{
databind();
}
}
private void databind()
{
ArrayList arr=new ArrayList();
arr.Add("新闻综合");
arr.Add("综艺");
arr.Add("电影");
arr.Add("教育");
arr.Add("戏剧");
arr.Add("军事");
arr.Add("体育");
DataGrid1.DataSource=arr;
DataGrid1.DataBind();
int i;
for(i=0;i<DataGrid1.Items.Count;i++){
CheckBox cb;
cb=(CheckBox)DataGrid1.Items[i].FindControl("checkbox1");
DataGrid1.Items[i].Attributes.Add("id","tr" + i.ToString());
cb.Attributes.Add("onclick","checkme(this,tr" + i.ToString() + ");");
}
}
第四,完成之后运行程序。程序运行后,会在DataGrid控件的每行前显示一个CheckBox控件,选择该控件,该行背景颜色变蓝色,取消选择,该行颜色恢复初始状态。
首先,在页面中创建一个DataGrid控件,并设置其模板。
<asp:DataGrid id="DataGrid1" runat="server" AutoGenerateColumns="False">
<Columns>
<asp:TemplateColumn>
<ItemTemplate>
<asp:CheckBox id="checkbox1" Runat ="server"></asp:CheckBox>
<asp:Label runat="server" Text='<%# DataBinder.Eval(Container, "DataItem") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateColumn>
</Columns>
</asp:DataGrid>
第二,在页面中的<head></head>中编写javascript脚本函数,进行CheckBox的判断和颜色改变的控制。
<script>
function checkme(obj,tr){
if(obj.checked)
tr.style.backgroundColor='blue';
else
tr.style.backgroundColor='';
}
</script>
第三,在Page_Load事件中为DataGrid绑定数据,并关联CheckBox的javascript脚本。
private void Page_Load(object sender, System.EventArgs e)
{
// Put user code to initialize the page here
if(!IsPostBack)
{
databind();
}
}
private void databind()
{
ArrayList arr=new ArrayList();
arr.Add("新闻综合");
arr.Add("综艺");
arr.Add("电影");
arr.Add("教育");
arr.Add("戏剧");
arr.Add("军事");
arr.Add("体育");
DataGrid1.DataSource=arr;
DataGrid1.DataBind();
int i;
for(i=0;i<DataGrid1.Items.Count;i++){
CheckBox cb;
cb=(CheckBox)DataGrid1.Items[i].FindControl("checkbox1");
DataGrid1.Items[i].Attributes.Add("id","tr" + i.ToString());
cb.Attributes.Add("onclick","checkme(this,tr" + i.ToString() + ");");
}
}
第四,完成之后运行程序。程序运行后,会在DataGrid控件的每行前显示一个CheckBox控件,选择该控件,该行背景颜色变蓝色,取消选择,该行颜色恢复初始状态。
相关文章推荐
- 选择DataGrid中的CheckBox控件后该行背景变色
- 选择DataGrid中的CheckBox控件后该行背景变色
- 选择DataGrid中的CheckBox控件后该行背景变色
- 选择DataGrid中的CheckBox控件后该行背景变色
- 选择DataGrid中的CheckBox控件后该行背景变色
- 选择DataGrid中的CheckBox控件后该行背景变色
- 选择DataGrid中的CheckBox控件后该行背景变色
- ASP.NET与JavaScript联合操作之一 选择DataGrid中的CheckBox控件后该行背景变色
- 选择DataList中的CheckBox控件后该行背景变色
- DataGrid 完全攻略之一(在编辑状态下改变控件的显示大小)
- DataGrid 完全攻略之七(实现选择、编辑和修改)
- 如何datagrid分页保持每页先前选择的checkbox的状态?
- Repeater和CheckBox控件(客户端和服务器端)实行全选或多条选择
- 设置DataGrid或DataList自动捆绑的checkbox选择状态
- Datagrid怎么根据选择的checkbox编辑和更新多行记录
- 在DataGrid页眉上添加全选的CheckBox控件
- 潜移默化学会WPF(难点控件treeview)--改造TreeView(CheckBox多选择版本),递归绑定数据
- 包含CheckBox控件的DataGrid导出到EXCEL——终极方法
- datagrid的几点简单应用,功能包括radio的单选,checkbox的多选,鼠标移动到行上颜色变深,链接传递多参数等功能。这里radio和checkbox都使用的是HTML控件。
- [转]如何datagrid分页保持每页先前选择的checkbox的状态?