如何找到动态创建的控件的客户端ID?
在我的ascx中,我有以下代码段。
function DoSomething() {
var loneStar= $find("<%= loneStar.ClientID %>");
loneStar.hide();
}
在后面的代码中,我有
public partial class SomeControl: System.Web.UI.UserControl
{
protected Label loneStar = new Label { Text = "Raspeberry", ForeColor = System.Drawing.Color.DarkGray};
private void someOtherMethod()
{
somePanel.Controls.Add(loneStar);
}
}
问题在于呈现的页面中的ClientID显示为空。
我在这里想念什么?
最佳答案
您需要给控件一个ID,否则将不会生成ID属性。对您的C#进行如下更改:
protected Label loneStar = new Label { ID = "loneStar", Text = "Raspeberry", ForeColor = System.Drawing.Color.DarkGray};