0

我正在使用 asp.net 4.0。

现在我想使用 javascript 在客户端创建一些内容,例如:

<div id="xx" runat="server"></div>

然后在服务器端,我想得到这个控件并填充一些内容,比如:

FindControl("xx").Controls.Add(....);

似乎这不起作用。由于服务器端进程在客户端进程之前工作。

有什么替代的想法吗?

4

1 回答 1

2

Asp.net 需要知道页面上有哪些控件。在 javascript 中添加元素并稍后将数据接收到后端的控件中并非易事。

正确的做法是将服务器端的控件添加到控件集合中。

请参阅:如何:以编程方式将控件添加到 ASP.NET 网页

Label myLabel = new Label();
myLabel.ID = "myLabel";
myLabel.Text = "Sample Label";
Panel1.Controls.Add(myLabel);

当控件通过添加到控件集合中时,someContainer.Controls.Add您可以使用找到它们someContainer.FindControl

Label myLabel = (Label)someContainer.FindControl("myLabel");

如果您不希望在动态添加控件时出现任何意外,您还需要完全了解asp.net 页面生命周期。

于 2013-01-15T03:53:37.513 回答