实现gridview中checkbox 模板列单选操作和.cs中判断checkbox是否选中

来源:互联网 发布:最新网络推广任务 编辑:程序博客网 时间:2024/06/16 08:54

最尽在做一个项目要求实现gridview中checkbox 模板列单选操作;同时能够通过cs代码检查是否存在checkbox为选中状态。我在网络上查找了许多的代码,很多只能实现其中的一个要求;我通过研究最终不负有心人,找到了决绝方案。下面把实现的代码附在 后面,希望对遇到同样问题的朋友予以帮助

js代码:

function signcheck(cbox)
    {
    
        var obj = document.getElementsByTagName("input");
        for(var  i=0;i<obj.length;i++)
        {
            if(obj[i].type=="checkbox")
            {
                obj[i].checked =false;
            }
        }
         var sid = cbox.id;         
            document.getElementById(sid).checked=true;
    }

 

gridview模板列代码:

 <asp:TemplateField ShowHeader="False" HeaderText="选择">
                                <ItemTemplate>                         
                                    <asp:CheckBox ID="CheckboxSign"  runat="server"  />                              
                                </ItemTemplate>
                            </asp:TemplateField>

 

gridview数据行数据加载:

 protected void GridViewDuckSeed_RowDataBound(object sender, GridViewRowEventArgs e)
    {
        try
        {
            CheckBox cb = (CheckBox)e.Row.FindControl("CheckboxSign");
            if (cb != null)
                cb.Attributes.Add("onclick", "signcheck(" + cb.ClientID + ")");

        }
        catch
        {
            ;
        }
    }
通过选择行执行删除操作:

 protected void btnDelete_Click(object sender, EventArgs e)
    {
        string DuckNum = "", IsValid = "";
        foreach (GridViewRow row in GridViewDuckSort.Rows)
        {
            CheckBox CheckboxSign = row.FindControl("CheckboxSign") as CheckBox;
            if (CheckboxSign.Checked == true)
            {
                DuckNum = row.Cells[1].Text.ToString();
                IsValid = row.Cells[3].Text.ToString();
            }
        }

        if (!string.IsNullOrEmpty(DuckNum))        
          Master.MessageBox("可执行删除操作!");
         else
                Master.MessageBox("没有选择数据操作无效!");

        }

    }

原创粉丝点击