【发布时间】:2012-06-29 23:16:53
【问题描述】:
我正在寻找一种以编程方式为 TableCell 对象设置 OnClick 事件处理程序的方法。我正在尝试做的 ASP 等效项如下所示:
<asp:TableCell OnClick="clickHandler" runat="server">Click Me!</asp:TableCell>
在上面的例子中,“clickHandler”是.cs CodeBehind中定义的一个服务器端函数。
public virtual void clickHandler(object sender, EventArgs args) {...}
但是,就我的情况而言,这个 TableCell 对象需要动态创建,因此不能在 ASP 标记中设置它。我正在尝试在 CodeBehind 中执行以下操作:
System.Web.UI.WebControls.TableRow row = new System.Web.UI.WebControls.TableRow();
System.Web.UI.WebControls.TableCell cell = new System.Web.UI.WebControls.TableCell();
cell.Text = "Click Me!";
cell.Attributes.Add("onClick", "clickHandler");
row.Cells.Add(cell);
不幸的是,在这种情况下:
cell.Attributes.Add("onClick", "clickHandler");
“clickHandler”仅作为客户端 JavaScript 函数工作。我正在寻找一种将 .cs CodeBehind 中定义的服务器端 clickHandler() 函数链接到此表格单元格的方法。
经过一下午的搜索,我一直无法想出一个可行的解决方案。提前感谢您的帮助。
【问题讨论】:
标签: onclick code-behind tablecell