ASP.NET与JavaScript联合操作之一 选择DataGrid中的CheckBox控件后该行背景变色

翻译|其它|编辑:郝浩|2005-08-30 09:30:00.000|阅读 1517 次

概述:

# 界面/图表报表/文档/IDE等千款热门软控件火热销售中 >>


在网络开发中,经常遇到需要使用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控件,选择该控件,该行背景颜色变蓝色,取消选择,该行颜色恢复初始状态。



 


标签:

本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@evget.com


为你推荐

  • 推荐视频
  • 推荐活动
  • 推荐产品
  • 推荐文章
  • 慧都慧问
扫码咨询


添加微信 立即咨询

电话咨询

客服热线
023-68661681

TOP