gridview实现单击选择行

数据的流 2011-11-23 12:53:19
gridview实现单击选择行,并能触发行选择事件,不要“选择”按钮,求高人指教!
...全文
376 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
IssacChow 2011-11-23
  • 打赏
  • 举报
回复
form是整个页面的form,ID是你绑定的字段名。没有form会报错
IssacChow 2011-11-23
  • 打赏
  • 举报
回复
<form>
<a id="a" runat="server" onserverclick="a_click"/>ID</a>
</form>
Sampson890727 2011-11-23
  • 打赏
  • 举报
回复
,代码简单贴出就是 protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e) { if (e.Row.RowType == DataControlRowType.DataRow) { 这里直接调用事件.如按钮事件this.btnSave_Click(sender,e); } }
Sampson890727 2011-11-23
  • 打赏
  • 举报
回复
,代码简单贴出就是 protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e) { if (e.Row.RowType == DataControlRowType.DataRow) { 这里直接调用事件.如按钮事件this.btnSave_Click(sender,e); } }
Sampson890727 2011-11-23
  • 打赏
  • 举报
回复
LZ是想实现在单击行的时候,执行里面的一个选择的事件.可以这样理解的话,代码简单贴出就是
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
这里直接调用事件.如按钮事件this.btnSave_Click(sender,e);
}



}

tangserver 2011-11-23
  • 打赏
  • 举报
回复

protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
//当鼠标在某行,更改背景色
e.Row.Attributes.Add("onmouseover", "color=this.style.backgroundColor;this.style.backgroundColor='#F9D79C'");
//当鼠标离开,还原背景色
e.Row.Attributes.Add("onmouseout", "this.style.backgroundColor=color");

//鼠标变小手 ondblclick双击onClick单击
e.Row.Attributes["style"] = "Cursor:hand";
e.Row.Attributes.Add("onClick", "this");
string nodenumber = GridView1.DataKeys[e.Row.RowIndex].Value.ToString();
e.Row.Attributes.Add("onClick", "window.open('manage/AddNodeB.aspx?nodenumber=" + nodenumber + "');window.parent.top.opener = null;window.open('','_self');parent.top.window.close()");
}
}
Roger370 2011-11-23
  • 打赏
  • 举报
回复
给你个代码
    protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
CheckBox cb = (CheckBox)e.Row.FindControl("CheckBox1");
if (e.Row.RowType == DataControlRowType.DataRow)
{
if (e.Row.Cells[0].Text != "合计")
{
//行选择事件
string singleclick = "if(document.getElementById('qingjiaID').value!='')";
singleclick += "{";
singleclick += "var gdview=document.getElementById('GridView1');";
singleclick += "var index=document.getElementById('qingjiaID').value;";
singleclick += "for(i = 1; i < gdview.rows.length; i++)";
singleclick += "{";
singleclick += "var cells =gdview.rows(i).getElementsByTagName('td');";
singleclick += "if(cells[1].innerText==index)";
singleclick += "{gdview.rows(i).className=c;}";
singleclick += "}";
singleclick += "};";
singleclick += "c=this.className;";
singleclick += "this.className='selected';";
singleclick += "document.getElementById('qingjiaID').value='" + e.Row.Cells[1].Text + "';";
e.Row.Attributes.Add("onclick", singleclick);
//行双击查看事件
string doubleclick = singleclick + "var d1=new Date().getTime();";
doubleclick += "var returnValue = window.showModalDialog('approveqingjia.aspx?id=" + e.Row.Cells[1].Text + "&&mode=chakan&&d1=' + d1,'','status=no;dialogwidth:740px;dialogheight:650px;scrollbars=auto,left=' + (screen.width-740)/2 + ',top=' + (screen.height-650)/2);";
//doubleclick += "if(returnValue!=null){document.getElementById('TextBox1').value = returnValue;}";
//doubleclick += "location.reload();//重载页面";
doubleclick += "document.getElementById('Button3').click();";
e.Row.Attributes.Add("ondblclick", doubleclick);
}
else
{
e.Row.BackColor = System.Drawing.Color.FromName("#FFE47A");
}
//检索checkbox是否可以点击
if (e.Row.Cells[10].Text != " " && e.Row.Cells[11].Text != " " && e.Row.Cells[12].Text != " ")
{
cb.Attributes.Add("onclick", "return false");
}
}
}

效果是点击某行任何位置,该行变色,点击其他行,其他行变色。这个是写在GridView1_RowDataBound事件中的,这个事件你可以去查查。
还有种方法是通过jquery来实现,其效果和原理都一样。
Aderlee 2011-11-23
  • 打赏
  • 举报
回复
GridView 72般绝技
insus 2011-11-23
  • 打赏
  • 举报
回复
dongt1 2011-11-23
  • 打赏
  • 举报
回复
百度 google搜一下英该有。
shiliangzhan 2011-11-23
  • 打赏
  • 举报
回复
可以嵌JS ,网上有功能直接用
kttt55 2011-11-23
  • 打赏
  • 举报
回复
在页面进行绑定
<%#DataBinder.Eval(Container.DataItem,"(所绑定的字段名称)")%>
要先在代码页把字段查询出来
一、表头表尾 1、自定义多表头,列合并,合并 2、删除表身指定列、 3、固定表头,向下拉动滚动条时,表头固定不动 4、表脚统计,总计、平均值 二、导入导出 1、导出Excel,Word 2、导入Excel 三、多层嵌套 1、在父GridView中的编辑模板中嵌套一个子GridView 2、三层GridView嵌套 四、分页排序 1、分页 2、列排序,点击列升序、降序排序 五、结合控件 1、CheckBox控件,多选、全选 2、DropDownList控件 3、隐藏控件,当选择处理状态选中备注时,隐藏textbox显示 4、radio控件,选中获取GridView表主键 5、GridView中DropDownList绑定数据,直接绑定显示,无需点击编辑按纽。 6、JavaScript操作checbox实现全选,多选 六、设置属性 1、JavaScript设置GridView的背景颜色,单偶的背景颜色,鼠标停留背景,鼠标选中时的背景 2、GridView的JavaScript中的单击,双击、删除提示框、快捷键事件 3、GridView设置属性,单元格文本颜色,单元格背景颜色,表中增加空 七、无代码 GridView排序、发送邮件、点击查看详情,内容过长截取 八、选增删改 1、GridView自带的选中、编辑、删除,即CommandField 2、GridView添加记录,在GridView表脚添加控件,用添加记录 3、更新所有记录,GridView直接绑定控件,然后更新 九、主键索引 根据主键多条记录删除,单条记录删除。

62,047

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧