单击事件无法从单个单元格单击触发

3

我试图在我的网格视图中单击每个单元格时触发一个onclick事件,但它没有调用该函数。我还尝试添加("onclick", "Btn_AddNewSite_Click(sender, e)"),但也不起作用。希望能提供一些正确的指导。

e.Row.Cells[column].Attributes.Add("onclick", "Btn_AddNewSite_Click()");

protected void Btn_AddNewSite_Click(object sender, EventArgs e)
{
    ModalPopupExtender1.PopupControlID = "Panel1";
    ModalPopupExtender1.Show();
}
2个回答

2

您可以通过确保 Btn_AddNewSite 是一个 LinkButton 来实现此操作。

<asp:LinkButton ID="Btn_AddNewSite" runat="server" OnClick="Btn_AddNewSite_Click"></asp:LinkButton>

然后,您可以使用处理单元格中LinkButton单击事件的JavaScript代码,使用其UniqueID。

e.Row.Cells[column].Attributes.Add("onclick", "__doPostBack('" + Btn_AddNewSite.UniqueID + "', '')");

是的,它确实可以。您在何时何地添加属性? - VDWWD
我在我的 asp gridview 代码之前添加了 asp 链接按钮代码。然后我复制了你的 e.Row.Cells[column] 的确切行,并没有触发函数调用,但它刷新了页面。 - dragsl4y3r
按钮是否有正确的 OnClick 事件?如果没有,它只会刷新页面。 - VDWWD
我修复了。我有另一个具有相同ID的按钮名称。非常感谢您的帮助! - dragsl4y3r

0

e.Row.Cells[column].Attributes.Add("onclick", "Btn_AddNewSite_Click()");

这将为单元格添加一个HTML属性,这意味着每当你在浏览器中点击单元格时,浏览器将查找名为 "Btn_AddNewSite_Click" 的JavaScript函数,显然,这里没有这个函数,因为这是一个服务器端的.NET函数。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接