我需要将焦点设置在我动态添加的标签上。这是我的AJAX面板
<asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:Panel ID="pnlProgress" runat="server" class="summaryBox"
Style="width: 650px; height: 225px" ScrollBars="Auto">
<asp:PlaceHolder ID="plcHolder" runat="server"></asp:PlaceHolder>
<asp:Button ID="btnTrigger" runat="server" OnClick="Button1_Click"
Style="visibility: hidden" /></asp:Panel>
</ContentTemplate>
</asp:UpdatePanel>
这是我的c#代码
label.Text = "SomeText";
label.ID = "lblMessage" + messageNumber;
if (heading)
{
label.Attributes.Add("style", "font-weight: bold;")
}
UpdatePanel1.ContentTemplateContainer.Controls.Add(label);
plcHolder.Controls.Add(label);
我在SetFocus(label)
之后尝试label.Attributes
,但它没有用。我无法在JScript中执行此操作,因为我无法GetElement
在我动态创建的任何标签上。有线索吗?我需要关注Panel,因为Panel有滚动条,我希望它滚动到最后一个动态添加的Label
答案 0 :(得分:1)
您可以直接在标签中调用焦点,如:
label.Text = "SomeText";
label.ID = "lblMessage" + messageNumber;
if (heading)
{
label.Attributes.Add("style", "font-weight: bold;")
}
UpdatePanel1.ContentTemplateContainer.Controls.Add(label);
plcHolder.Controls.Add(label);
label.Focus();
但是,如果您想要的是滚动到该元素,那么标签将不起作用,只有输入字段我相信。您可以使用文本框和样式看起来像标签。