怎样实现在DataGarid里的ButtonColumn写他的触发事件?

chengxing 2005-07-14 01:42:42
我有个DataGarid里面放置了一个ButtonColumn,想当点击ButtonColumn的时候,触发一段脚本,然后弹出一个新的页面出来,不知道怎么实现?

--------------------------------------------------

private void DataGrid1_UpdateCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
{

TextBox txtSiteId = new TextBox();
txtSiteId = (TextBox) e.Item.Cells[8].FindControl("txtSiteId_U");


TextBox txtSiteName = new TextBox();
txtSiteName = (TextBox) e.Item.Cells[8].FindControl("txtSiteName_U");

TextBox txtPartId = new TextBox();
txtPartId = (TextBox) e.Item.Cells[8].FindControl("txtPartId_U");

TextBox txtDistrictId = new TextBox();
txtDistrictId = (TextBox) e.Item.Cells[8].FindControl("txtDistrictId_U");

TextBox txtTownshipId = new TextBox();
txtTownshipId= (TextBox) e.Item.Cells[8].FindControl("txtTownshipId_U");

TextBox txtArea = new TextBox();
txtArea = (TextBox) e.Item.Cells[8].FindControl("txtArea_U");

TextBox txtAddress = new TextBox();
txtAddress= (TextBox) e.Item.Cells[8].FindControl("txtAddress_U");

TextBox txtOwner = new TextBox();
txtOwner = (TextBox) e.Item.Cells[8].FindControl("txtOwner_U");

string strSiteId = txtSiteId.Text.Trim();
string strSiteName= txtSiteName.Text.Trim();
string strPartId = txtPartId.Text.Trim();
string strDistrictId = txtDistrictId.Text.Trim();
string strTownshipId = txtTownshipId.Text.Trim();
string strArea = txtArea.Text.Trim();
string strAddress = txtAddress.Text.Trim();
string strOwner = txtOwner.Text.Trim();


e.Item.Cells[0].Attributes.Add("onclick","btnUpdate_OnClick('" + strSiteId + "','" + strSiteName + "','" + strPartId + "','" + strDistrictId + "','" + strTownshipId + "','" + strArea + "','" + strAddress + "','" + strOwner + "')");


}
...全文
209 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
njqibin 2005-07-14
  • 打赏
  • 举报
回复
换成select按钮应该可以吧?不过就怕多个select,那样多个按钮会触发同一事件。如果只有一个select,没问题。
xiedan79 2005-07-14
  • 打赏
  • 举报
回复
DataGrid 有个 ItemCommand 事件,你给你的 buttoncolumn 赋个 CommandName
在 ItemCommand 事件里判断到底触发了哪个事件
chengxing 2005-07-14
  • 打赏
  • 举报
回复
to: jimu8130(yang)
==========================================================================================
是的,我的buttoncolumn按钮是用的编辑更新取消按钮,那我要实现在DataGrid里触发这个事件,那该如何实现呢,谢谢!
jimu8130 2005-07-14
  • 打赏
  • 举报
回复
你的客户端事件onclick和按牛是在当你按了编辑更新取消按钮列的更新按钮后才和按钮捆绑上了!如果你没有按更新按钮或者你根本就没按它,那这个客户段的事件不会触发
所以像你说的只有点击两次buttoncolumn列才触发
看来你的buttoncolumn列就是编辑更新取消按钮
SnApnet 2005-07-14
  • 打赏
  • 举报
回复
把DATAGRID绑定程序放在if(!Page.IsPostBack)中,就不会点两次才触发了

chengxing 2005-07-14
  • 打赏
  • 举报
回复
为什么在页面点两次ButtonColumn按钮,才能触发这个事件(btnUpdate_OnClick),请大家帮忙。
chengxing 2005-07-14
  • 打赏
  • 举报
回复
为什么在页面点两次ButtonColumn按钮,才能处罚这个事件(btnUpdate_OnClick),请大家帮忙。
chengxing 2005-07-14
  • 打赏
  • 举报
回复
to: jimu8130(yang) 肯定有了
jimu8130 2005-07-14
  • 打赏
  • 举报
回复
你的js代码有btnUpdate_OnClick这个方法么?
chengxing 2005-07-14
  • 打赏
  • 举报
回复
e.Item.Cells[0].Attributes.Add("onclick","btnUpdate_OnClick('" + strSiteId + "','" + strSiteName + "','" + strPartId + "','" + strDistrictId + "','" + strTownshipId + "','" + strArea + "','" + strAddress + "','" + strOwner + "')");

关键是这里触发一个事件,找不到这个事件,高手帮我看看怎么解决。

62,041

社区成员

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

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

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

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