我想做这样的事情:
<asp:Label ID="lblMyLabel" onclick="lblMyLabel_Click" runat="server">My Label</asp:Label>
Run Code Online (Sandbox Code Playgroud)
我知道在Javascript中我能做到:
<span onclick="foo();">My Label</span>
Run Code Online (Sandbox Code Playgroud)
所以我想知道为什么我不能用Label对象做到这一点.
Bri*_*Kim 45
您可以使用属性添加onclick客户端回调.
我不知道你可以在span标签上做到这一点,但如果它有效,你可以添加'onclick' lblMyLabel.Attributes.Add("onclick", "foo();");
但foo();需要是客户端javascript函数.
System.Web.UI.WebControls.Label没有OnClick服务器事件.如果您希望使用上面的示例进行服务器回调,可以考虑使用AJAX.
你也可以LinkButton像其他人一样说.你可以通过使用CSS使它看起来不像一个链接,如果它只是你担心的下划线.
ASPX:
<asp:LinkButton ID="LinkButton1" runat="server"
CssClass="imjusttext" OnClick="LinkButton1_Click">
LinkButton
</asp:LinkButton>
Run Code Online (Sandbox Code Playgroud)
CSS:
a.imjusttext{ color: #000000; text-decoration: none; }
a.imjusttext:hover { text-decoration: none; }
Run Code Online (Sandbox Code Playgroud)
Cod*_*hef 11
您的问题没有指明是否要在服务器(VB或c#)或客户端(javascript)上引发click事件.如果您正在寻找服务器端事件,您应该使用带有css的链接按钮链接显示为标签.然后,您可以使用链接按钮的服务器端单击事件.如果您正在寻找客户端点击事件 - 只需将其键入服务器控件标记,
asp:label id="MyLabel" runat="server" onclick="javascript:alert('hello');" Text="Click Me";
ASP.NET将在生成的html标记中发出其他属性.
您可以在page_load中的代码中执行此操作,例如:
void Page_Load(object sender, EventArgs e)
{
lblMyLabel.Attributes.Add("onclick",
"javascript:alert('ALERT ALERT!!!')");
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
93962 次 |
| 最近记录: |