0
美好的一天,将JavaScript注入到c代码后面的链接按钮中#
我有一个包含链接按钮的中继器。链接按钮的值和数量是基于从数据库中提取的数据生成的。在HTML代码的东西如下:
<asp:Repeater ID="repCategories" runat="server" EnableViewState="false">
<ItemTemplate>
<a href="<asp:Literal ID="litLink2" runat="server"></a>
</ItemTemplate>
</asp:Repeater>
下面是一些代码,我尝试在后面我的代码做,
for (int i = 0; i < table.Rows.Count; i++)
{
RepeaterItem itm = repCategories.Items[i];
GiftRow dr = tbl.GetRow(i);
Literal litLink2 = (Literal)itm.FindControl("litLink2");
litLink2.Text = dr.Name;
string myScript = string.Empty;
myScript = "\n<script type=\"text/javascript\" language=\"Javascript\" id=\"EventScriptBlock\">\n";
myScript += "alert('hi');";
myScript += "\n\n </script>";
Page.ClientScript.RegisterStartupScript(this.GetType(), "myKey", myScript, false);
}
通过这样做,我会得到警报hi
当我加载页面。我想要做的是,我只希望它在点击链接按钮时提醒hi
,而不是页面加载。
嗨DeeMac,由于用户需求,我不能将''链接改为'asp链接按钮'。此外,我的JavaScript实际上很长,'alert(hi)'只是演示示例。任何其他方式我可以在Literal元素上做什么? – 2014-11-05 10:23:30
使用文字而不是链接按钮不会改变您的JavaScript的大小。你在服务器上处理一段冗长的javascript是一个问题。先将JavaScript获取到客户端,然后将其绑定到前端。 – 2014-11-05 10:28:05