5

我正在寻找一种可靠的机制来为 HTMLGenericControl(例如 li 元素)生成服务器端回发处理程序。

我有一些我不想更改的标记,并且更愿意以与标准 .Net 服务器控件相同的方式处理它。

另外,我知道我可以使用基于模板的控件将一些 .Net 控件放置在标记中作为隐藏,然后从客户端单击代理触发它们的单击事件。但是,我真的很想知道这是否可以做得更好。

4

2 回答 2

5

您需要的问题是:
- 没有具有有效事件处理程序的服务器端控件,因此可以触发服务器端事件。

我能想到的几个选项:

  • 使用PageMethods
  • 调用 __doPostBack()
  • 调用自定义 javascript 向服务器发出 XMLHTTP 请求
于 2010-03-31T16:12:57.837 回答
2

查看 ASP.NET __doPostBack 函数。 是一篇很好的文章。

您可以为您的 li 元素(或其他任何内容)添加一个单击处理程序,以让它们调用 __doPostBack 函数。这是大多数其他服务器控件所做的,因此您使用相同的机制 - 唯一的区别是您手动设置元素上的点击处理程序。

于 2010-03-31T16:09:40.623 回答