[英]Anchor control in Literal
using System;
namespace WebApplication1
{
public partial class _Default : System.Web.UI.Page
{
public void Download(object obj, EventArgs e)
{
Response.Write("abc");
}
protected void Page_Load(object sender, EventArgs e)
{
Literal1.Text = "<a id='anc' href ='#' runat='server' onserverclick='Download'>Click Me</a>";
Response.Write(Literal1.Text);
}
}
}
<div>
<asp:Literal ID="Literal1" runat="server"></asp:Literal>
</div>
我有上面的代码片段。 我正在尝试通过以下方式将文字中的锚点绑定到 function:onserverclick = "Download"
但事件没有触发。 要求是锚点仅通过文字呈现。
请帮忙。
虽然您的Literal1
控件是服务器端控件,但将 .Text 值设置为表示服务器控件将不起作用。
也许使用 asp LinkButton
控件而不是文字
所以 your.aspx 页面将具有:
<asp:LinkButton ID="abc" runat="server" OnClick="Download" Text="Download" />
和你的代码 behind.aspx.cs 是这样的:
protected void Page_Load(object sender, EventArgs e)
{
}
protected void Download(object sender, EventArgs e)
{
Response.Write("abc");
}
属性 runat="server" 在客户端代码中没有意义(这是您在此处生成的)。 您可能需要求助于调用网络服务。
我们在文字之外使用锚标记。 然后它工作正常
如果您不想使用 LinkButton,您可以用您在 Page_Load 上添加的文本替换您的 Literal(不完全确定为什么要这样做?)。
然后运行 AJAX web 请求以运行下载方法。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.