c# - asp.net:如何将类似 LinkBut​​ton 的链接功能与表格单元格背景上的委托(delegate)连接起来?

标签 c# asp.net javascript user-controls delegates

我正在使用 ASP.NET 用户控件。我通过链接按钮通过命令参数将值传递给另一个用户控件,如下所示:

ASP:

LinkButton ID="ZoomPhotoLinkButton" CommandArgument='<%#(Eval("conid"))%>' CommandName="PassItemId" runat="server">Zoom It</asp:LinkButton>

我真正想要的是使表格的整个背景单元格可单击,以便单击表格单元格上的任何位置都可以传递适当的 CommandName 和 CommandArgument 并适当链接。

在我使用委托(delegate)进行此设置之前,我使用简单的 JavaScript 和内联代码隐藏函数将 URL 传递给内联 JavaScript,实现了上述行为:

(我使用方括号而不是尖括号,因为 StackOverFlow 正在尝试解析我的“表代码”):

[td] onclick="window.location='<%# FormatDetailPageUrl((object)Eval("conid"))%>'" style='cursor:pointer;text-align: center; border:0px;'[/td]

我正在尝试做一些与单击表格单元格功能相同的事情,除了调用适当的 CommandName 和 CommandArgument 与简单的 Javascript 之外。

提前致谢。

最佳答案

ASP.Net 使用 __doPostBack() 函数来实现这个魔法。你可以自己调用它;第一个参数是 eventTarget,第二个参数是 eventArgument。

因此,对于您的情况,您可以执行以下操作:

<td onclick="__doPostBack('PassItemId', '<%#(Eval("conid"))%>')"></td>

您可能还想查看Page.GetPostBackEventReference

关于c# - asp.net:如何将类似 LinkBut​​ton 的链接功能与表格单元格背景上的委托(delegate)连接起来?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/805661/

相关文章:

c# - 如何根据我的 Web API MVC 应用程序中的查询结果动态创建复选框?

c# - 从数据库中提取大量数据时出现内存不足异常

javascript - PhantomJS GET URL 参数

javascript - 检测应用程序是否从页面加载

javascript - 获取 tr 中的数据属性

c# - 是否可以在不复制的情况下为多个组件创建一个 Blazor 范围的 CSS 文件?

c# - C#中类实例数组的优雅初始化

javascript - 如何在 JavaScript 中设置 textBox.Text=radCombo.Text

c# - asp.NET MVC 将信息传递给 PartialView

c# - machine.config processModel autoConfig ="true or false"用于 .net 4.0 中的显式值