我有一个标签控件和javascript函数callme()如下所示。当点击Press标签时,它可以正常工作。
<asp:Label ID="lblpress" runat="server" onclick="callme()" Text="Press"></asp:Label>
我想从服务器端事件以编程方式单击此标签客户端事件。我该怎么做。
答案 0 :(得分:1)
使用Attributes collection property
protected void Page_Load(object sender, EventArgs e)
{
lblpress.Attributes.Add("onclick", "'callme()'");
//if the attribute already exist, you can change it this way
lblpress.Attributes["onclick"] = "'callme()'";
}
Attributes集合包含所有属性的集合 在Web服务器控件的开始标记中声明。这可以让你 以编程方式控制与Web关联的属性 服务器控制。您可以向集合添加属性或删除 集合中的属性
答案 1 :(得分:0)
您可以使用RegisterClientScriptBlock来执行此操作。
String csName = "LabelClickScript";
ClientScriptManager cs = Page.ClientScript;
StringBuilder csText = new StringBuilder();
csText.Append("<script type=\"text/javascript\"> function DoClick() {");
csText.Append("alert('Text from client script.')
}
DoClick();
</");
csText.Append("script>");
cs.RegisterClientScriptBlock(this.GetType(), csName, csText.ToString());
答案 2 :(得分:0)
为什么不使用正确的控件,例如链接按钮或HTML中的锚点